Étiquette : Apache

  • Installation de phpMyAdmin sur Ubuntu

    1 – Les prérequis

    Avant d’installer phpMyAdmin il y a plusieurs prérequis

    • Avoir installé une base de données sql (par exemple mariadb)

    2 – Mise à jour des sources

    sudo apt update

    3 – Installation phpMyAdmin et des modules php nécessaires

    sudo apt install phpmyadmin php-zip php-gd php-json php-curl libapache2-mod-php

    y

    • Choisir apache2 en appuyant sur espace pour mettre une croix dans la case apache 2, puis tab pour aller sur ok, puis entrée
    • Bien vérifier que la croix est bien mise avant de faire entrée sinon l’installation ne choisira pas apache2 et il faudra tout recommencer
    • Yes pour lancer la configuration de phpMyAdmin
    • Mettre un mot de passe pour phpMyAdmin et le confirmer
    • phpMyAdmin est installé

    4 – Paramétrage

    phpMyAdmin fournis, par défaut un paramétrage fonctionnel, donc on va activer ce paramétrage par défaut

    sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf
    sudo a2enconf phpmyadmin.conf
    sudo systemctl reload apache2.service

    5 – Test

    On se connecte sur http://ipduserveur/phpmyadmin

    6 – Bonus

    Si on a cette erreur à la connexion à phpMyAdmin

    Cela signifie que root n’a pas le droit de se connecter à phpMyAdmin.

    On va lister les utilisateurs de la base

    sudo mysql -u root
    SELECT user, host, plugin FROM mysql.user;

    On voit bien que l’utilisateur est phpmyadmin et non root qui peux se connecter à phpMyAdmin

    On vérifie les accès de phpmyadmin

    SHOW GRANTS FOR 'phpmyadmin'@'localhost';

    Les seuls accès qu’il a c’est sur sa base, on va donc lui donner tous les accès possibles

    GRANT ALL PRIVILEGES ON *.* TO 'phpmyadmin'@'localhost' WITH GRANT OPTION;
    FLUSH PRIVILEGES;

    On resteste en remettant la commande Show Grants

    notre utilisateur a bien tous les privilèges. On peux tester la connexion

    Tout est fonctionnel, on peux utiliser phpMyAdmin avec mariadb

  • Installation de PHP sur Ubuntu

    Avant d’installer PHP sur Ubuntu il faut avoir installé Apache.

    Pour installer apache, le tuto se trouve ici

    1 – Vérifier la version disponible pour php

    sudo apt list php

    Dans mon exemple et à l’heure où j’écris, la dernière version disponible est la 8.4

    2 – Installation de php

    sudo apt install php8.4 libapache2-mod-php8.4 php-common php8.4-cli php8.4-common php8.4-opcache php8.4-readline

    Nb : il faut penser à changer le numéro de la version en fonction de la version disponible de l’on a

    Nb 2 : on peux rajouter php8.4-mysql dans la liste si on veux mettre un phpmyadmin par exemple par la suite

    3 – Activation du module PHP pour Apache et redemarage de Apache

    sudo a2enmod php8.4
    sudo systemctl restart apache2

    Nb : Attention au numéro

    4 – Test que tout fonctionne

    On crée un fichier phpinfo.php dans /var/www/html/phpinfo.php et on le rempli avec <?php phpinfo();?>

    sudo nano /var/www/html/phpinfo.php

    On lance la page sur notre navigateur

    5 – Activation de PHP FPM qui permet d’accélérer le serveur web. La documentation du PHP FPM se trouve ici

    5.1 – Désactiver le module de base

    sudo a2dismod php8.4

    (Toujours attention au numéro)

    5.2 – Activation du module PHP FPM

    sudo apt install php8.4-fpm

    (Toujours attention au numéro)

    5.3 – Activation des modules proxy_fcgi et setenvif

    sudo a2enmod proxy_fcgi setenvif

    5.4 – Activation du fichier de configuration FPM

    sudo a2enconf php8.4-fpm

    (Toujours attention au numéro)

    6 – Redémarrage du serveur apache et vérification

    sudo systemctl restart apache2

    Apache utilise désormais FPM

    7 – La suite

    On peux, si on veux, installer mariadb

  • Installation Apache 2 sur Ubuntu

    1 – Installation du serveur Apache

    sudo apt install -y apache2 apache2-utils

    2 – Normalement le serveur démarre seul

    2.1 – On peux vérifier en faisant

    sudo systemctl status apache2

    2.2 – Si pas démarré, on le démarre avec

    sudo systemctl start apache2

    3 – Activer apache2 pour un démarrage automatique

    sudo systemctl enable apache2

    4 – On peux tester la connexion

    4.1 – on récupére l’ip du serveur

    ip a

    4.2 – on se connecte sur le serveur avec un navigateur

    5 – Apache crée automatiquement un utilisateur www-data et un groupe www-data. On va nommer cet utilisateur propriétaire du répertoire /var/www/html qui est le répertoire des sites.

    sudo chown www-data:www-data /var/www/html/ -R

    6 – On teste la résolution de nom

    sudo apache2ctl -t

    Si la réponse est « Syntax OK » alors tout est bon, on a fini

    Si la réponse est « Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1. Set the ‘ServerName’ directive globally to suppress this message » alors on passe à l’etape 7.

    Cette erreur signifie que le nom d’hôte du système ne peux être résolu via DNS, il faut donc forcer un nom d’hôte par apache

    7 – Forcer le nom d’hôte sur apache

    sudo nano /etc/apache2/conf-available/servername.conf

    7.1 – Ajouter la ligne

    ServerName localhost

    On peux bien entendu mettre le nom de son domaine à la place de localhost si on veux mettre apache sur son domaine

    7.2 – Activer ce fichier de configuration

    sudo a2enconf servername.conf

    Redémarrer Apache

    sudo systemctl reload apache2

    8 – La suite

    On peux, par la suite, installer PHP. Le tuto se trouve ici