Installer PhpMyAdmin sous Rocky Linux 8 avec Apache
Avant d'installer PhpMyAdmin, nous devons mettre à jour notre distribution
dnf update --refresh
On installe tout les paquets nécessaires
sudo dnf -y install mariadb mariadb-server httpd wget
On installe php 7.4 depuis les depots de Rocky.
sudo dnf module reset php:7.3
sudo dnf module enable php:7.4
sudo dnf install php
On installe ensuite les divers composant de php que nous avons besoin
sudo dnf -y install php-{cli,common,fpm,curl,gd,mbstring,process,snmp,xml,zip,mysqlnd,json,mbstring,pdo,xml}
On démarre ensuite les services MariaDB et Apache
sudo systemctl enable --now mariadb
sudo systemctl enable --now httpd
On lance la post installation de MariaDB, la ou il demande un mot de passe root on fait entrer et on met un mot de passe. Pour la suite on met y partout.
sudo mysql_secure_installation
Maintenant on telecharge et on install PhpMyAdmin
On ce retrouve sur cette page et on prend le all-languages.zip on fait un clique droit et copier le lien.
Dans notre serveur on le telecharge et le décompresse et on le met a un certain endroit.
wget https://files.phpmyadmin.net/phpMyAdmin/5.2.0/phpMyAdmin-5.2.0-all-languages.zip
unzip phpMyAdmin-5.2.0-all-languages.zip
sudo mv phpMyAdmin-5.2.0-all-languages /usr/share/phpmyadmin
cd /usr/share/phpmyadmin
On créer notre fichier de configuration
sudo mv config.sample.inc.php config.inc.php
On créer une clé secrete et on la copie
openssl rand -base64 32
et on modifie notre fichier de configuration
nano config.inc.php
On ajoute notre clé secrete
/**
* This is needed for cookie based authentication to encrypt password in
* cookie. Needs to be 32 chars long.
*/
$cfg['blowfish_secret'] = 'NOTRECLE'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
/**
On ajoute aussi une ligne pour avoir un dossier tmp
/**
* Directories for saving/loading files from server
*/
$cfg['UploadDir'] = '';
$cfg['SaveDir'] = '';
$cfg['TempDir'] = '/tmp';
/**
On créer notre dossier tmp et on applique les droits pour PhpMyAdmin
sudo mkdir /usr/share/phpmyadmin/tmp
sudo chown -R apache:apache /usr/share/phpmyadmin
sudo chmod 777 /usr/share/phpmyadmin/tmp
On créer maintenant un alias pour Apache afin d'accéder a PhpMyAdmin
sudo nano /etc/httpd/conf.d/phpmyadmin.conf
et on ajoute :
Alias /phpmyadmin /usr/share/phpmyadmin
<Directory /usr/share/phpmyadmin/>
AddDefaultCharset UTF-8
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAny>
Require all granted
</RequireAny>
</IfModule>
</Directory>
<Directory /usr/share/phpmyadmin/setup/>
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAny>
Require all granted
</RequireAny>
</IfModule>
</Directory>
On autorise maintenant SeLinux a pouvoir autoriser PhpMyAdmin
sudo chcon -Rv --type=httpd_sys_content_t /usr/share/phpmyadmin/*
On fait pareil pour Apache mais avec firewalld
sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload
On redemarre notre service apache
sudo systemctl restart httpd.service
Maintenant nous pouvons nous connecter à PhpMyAdmin avec notre IP/phpmyadmin