apt update

apt upgrade -y

apt install ca-certificates apt-transport-https lsb-release gnupg curl nano unzip -y

curl -fsSL https://packages.sury.org/php/apt.gpg -o /usr/share/keyrings/php-archive-keyring.gpg

echo "deb [signed-by=/usr/share/keyrings/php-archive-keyring.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list

apt update

apt install apache2 -y

apt install php8.2 php8.2-cli php8.2-common php8.2-curl php8.2-gd php8.2-intl php8.2-mbstring php8.2-mysql php8.2-opcache php8.2-readline php8.2-xml php8.2-xsl php8.2-zip php8.2-bz2 libapache2-mod-php8.2 -y

apt install mariadb-server mariadb-client -y

mysql_secure_installation

cd /usr/share

wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.zip -O phpmyadmin.zip

unzip phpmyadmin.zip

rm phpmyadmin.zip

mv phpMyAdmin-*-all-languages phpmyadmin

chmod -R 0755 phpmyadmin

nano /etc/apache2/conf-available/phpmyadmin.conf


# phpMyAdmin Apache configuration

Alias /phpmyadmin /usr/share/phpmyadmin

<Directory /usr/share/phpmyadmin>
Options SymLinksIfOwnerMatch
DirectoryIndex index.php
</Directory>

# Disallow web access to directories that don't need it
<Directory /usr/share/phpmyadmin/templates>
Require all denied
</Directory>
<Directory /usr/share/phpmyadmin/libraries>
Require all denied
</Directory>
<Directory /usr/share/phpmyadmin/setup/lib>
Require all denied
</Directory>


a2enconf phpmyadmin

mkdir /usr/share/phpmyadmin/tmp/

chown -R www-data:www-data /usr/share/phpmyadmin/tmp/