Installation de Apache 2.4, PHP 7.3, MySql 5.7
Serveur : Gandi Cloud Distribution de travail : Debian 9 Stretch
1/ Connexion au serveur avec l'utilisateur 'admin'.
Sur l'ordinateur de développement.
- Connexion au serveur :
sam@sam:~$ ssh admin@92.243.8.110 ... admin@server01ts:~$
2/ Passer en utilisateur administrateur 'root'.
admin@server01ts:~$ su Password: root@server01ts:/home/admin#
3/ Mise-à-jour de la distribution.
root@server01ts:/home/admin# apt-get update && apt-get upgrade
4/ Installation de Apache2.
- Installation de Apache 2 :
root@server01ts:/home/admin# apt-get install apache2 apache2-doc
- Test :
5/ Installation de PHP 7.3.
- Installation de PHP 7.3 :
root@server01ts:/home/admin# apt -y install lsb-release apt-transport-https ca-certificates root@server01ts:/home/admin# wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg root@server01ts:/home/admin# echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php7.3.list root@server01ts:/home/admin# apt update root@server01ts:/home/admin# apt -y install php7.3 php7.3-cli php7.3-fpm php7.3-json php7.3-pdo php7.3-mysql php7.3-zip php7.3-gd php7.3-mbstring php7.3-curl php7.3-xml php7.3-bcmath php7.3-json libapache2-mod-php7.3
- Création d'un fichier de test :
Ouvrir :
/var/www/html/phpinfo.php
Ajouter :
<?php phpinfo(); ?>
- Adresse internet de test :
http://92.243.8.110/phpinfo.php
6/ Installation de MySQL.
- Installation :
root@server01ts:/home/admin# apt-get install mysql-server
- Sécurisation :
root@server01ts:/home/admin# mysql_secure_installation ... Enter current password for root (enter for none): <Entrée> ... Set root password? [Y/n] New password: <Taper un mot de passe> Re-enter new password: <Tape le même mot de passe> ... Remove anonymous users? [Y/n] <Entrée> ...
- Test :
root@server01ts:/home/admin# mysql -u root -p Enter password: ... MariaDB [(none)]>
7/ Installation de PhpMyAdmin.
- Installation de PhpMyAdmin :
root@server01ts:/home/admin# apt-get install phpmyadmin
Configure database for phpmyadmin with dbconfig-common : Yes MySQL application password for phpmyadmin : <Taper un mot de passe> Web server to reconfigure automatically : apache2
- Création de l'utilisateur admnistrateur 'admin' :
root@server01mj2:/home/admin# mysql -u root -p MariaDB [(none)]> CREATE USER 'admin'@'localhost' IDENTIFIED BY 'Mot2Passe'; MariaDB [(none)]> GRANT ALL PRIVILEGES ON * . * TO 'admin'@'localhost'; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> quit
- Configuration de Apache2 :
Ouvrir :
/etc/apache2/apache2.conf
À la fin, ajouter :
# Include phpMyAdmin Include /etc/phpmyadmin/apache.conf
- Redémarrer le service Apache2 :
root@server01ts:/home/admin# systemctl restart apache2
- Test :
http://92.243.8.110/phpmyadmin/
8/ Activation de la réécriture d'url.
root@server01ts:/home/admin# a2enmod rewrite root@server01ts:/home/admin# systemctl restart apache2
9/ Augmentation du temps d'exécution.
- Configuration de PHP :
Ouvrir :
/etc/php/7.3/apache2/php.ini
Chercher :
max_execution_time = 30
Remplacer par :
max_execution_time = 180
- Redémarrer le service Apache2 :
root@server01ts:/home/admin# systemctl restart apache2
10/ Configuration du fichier 'hosts'.
Sur l'ordinateur de développement.
- Configuration du fichier 'hosts' :
Ouvrir :
/etc/hosts
Ajouter à la fin :
92.243.8.110 dev.monsite.fr
- Test :
sam@sam:~$ host dev.mywebsite.com dev.mywebsite.com has address 92.243.8.110
11/ Création du répertoire du site web 'dev.mywebsite.com'.
Pour l'utilisateur 'admin'.
- Création du répertoire du site web :
admin@server01ts:~$ mkdir public_html
- Création de la page d'accueil :
Ouvrir :
public_html/index.php
Ajouter :
<?php echo "admin"; ?>
12/ Création d'un hôte virtuel.
- Création du fichier de configuration du vhost :
Ouvrir :
/etc/apache2/sites-available/dev.mywebsite.com.conf
Ajouter :
<VirtualHost *:80> ServerName dev.mywebsite.com ServerAlias dev.mywebsite.com ServerAdmin webmaster@linuxtricks.fr ErrorLog /var/log/apache2/dev.mywebsite.com-error_log TransferLog /var/log/apache2/dev.mywebsite.com-access_log DocumentRoot "/home/admin/public_html" <Directory "/home/admin/public_html/"> Options Indexes MultiViews AllowOverride All Require all granted </Directory> </VirtualHost>
- Activer le site web :
root@server01ts:/home/admin# a2ensite dev.mywebsite.com
- Relancer Apache2 :
root@server01ts:/home/admin# systemctl reload apache2
- Test :
Sur l'ordinateur de développement : http://dev.mywebsite.com/