Page modifiée le :

Installation d'un serveur web avec php

Il existe plusieurs serveurs web instalables dont Nginx et Apache. Nginx est rapide et léger, idéal pour servir du contenu statique. Apache est quand à lui beaucoup plus flexible pour du contenu dynamique. Pour une comparaison plus complète : https://www.supinfo.com/articles/single/5509-apache-vs-nginx. Ici, le choix s'est porté sur Apache.

Un serveur à besoin d'une adresse IP fixe pour être facilement accessible. Si vous êtes derrière une box qui vous fournis l'IP via DHCP, l'adresse attribué à votre serveur ne devrait guère changer tant qu'il est allumé. Il est cependant mieux de restreindre la plage d'adresse qui puisse être utilisée pour le DHCP. Dans la box (ici une freebox révolution), la plage pour le DHCP va de 192.168.010 à 192.168.0.50. L'adresse du serveur omega est fixée à 192.168.0.126.

Plage DHCP Adresses IP fixes

Installation d'apache et de php :

Le serveur Xu4 s'appelle omega. Le serveur web s'appellera zwiicms.
root@omega:~# apt install apache2 libapache2-mod-php php7.3-mbstring php7.3-xml php7.3-zip
Reading package lists... Done
...
After this operation, 24.5 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
...
root@omega:~#
Depuis votre portable, ouvrez un navigateur à l'adresse http://192.168.0.126 (Remplacez par votre adresse). Serveur Web apache2 installé !

Installation d'un site web (ZwiiCMS)

Activez des modules et redémarez apache :
root@omega:~# a2enmod rewrite
root@omega:~# a2enmod headers
root@omega:~# a2enmod expires
root@omega:~# systemctl restart apache2
La racine par défaut est /var/www/html. On voudra peut être un jour plusieurs sites dont les racines seront /var/www/html/site1, /var/www/html/site2, ...
Créez un répertoire zwiicms dans /var/www/html et installez Zwiicms dedans.
root@omega:~# cd /var/www/html
root@omega:/var/www/html# mkdir zwiicms
root@omega:/var/www/html# cd zwiicms/
root@omega:/var/www/html/zwiicms# wget zwiicms.com/site/file/source/telechargement/ZwiiCMS-10092.zip
--2020-05-14 09:13:11-- http://zwiicms.com/site/file/source/telechargement/ZwiiCMS-10092.zip
Resolving zwiicms.com (zwiicms.com)... 213.186.33.87
Connecting to zwiicms.com (zwiicms.com)|213.186.33.87|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 3897159 (3.7M) [application/zip]
Saving to: ‘ZwiiCMS-10092.zip’
ZwiiCMS-10092.zip 100%[==================================================================================>] 3.72M 21.6MB/s in 0.2s
2020-05-14 09:13:11 (21.6 MB/s) - ‘ZwiiCMS-10092.zip’ saved [3897159/3897159]
root@omega:/var/www/html/zwiicms# unzip ZwiiCMS-10092.zip 
Archive: ZwiiCMS-10092.zip
inflating: .htaccess 
inflating: CHANGES.md 
...
extracting: site/file/thumb/screenshot.png 
creating: site/tmp/
extracting: site/tmp/.htaccess
root@omega:/var/www/html/zwiicms# cd ~
root@omega:~# chown -R www-data:www-data /var/www/html/zwiicms
root@omega:~# ls -l /var/www/html
total 24
-rw-r--r-- 1 root root 10701 May 13 18:58 index.html
drwxr-xr-x 6 www-data www-data 4096 May 14 08:03 zwiicms

Depuis votre portable, ouvrez un navigateur à l'adresse http://192.168.0.126/zwiicms (Remplacez par votre adresse). Cela doit ouvrir la page d'installation de ZwiiCMS. Vous pouvez remplir les informations pour ZwiiCMS ou attendre pour plus tard.

Le site marche et est online sur votre réseau local. Il va falloir penser à lui donner un nom qui puisse remplacer 192.168.0.126.

Ce nom (zwiicms ou zwiicms.local ou www.local ou www.domain.tld) est a renseigner à ServerName, votre adresse mail à ServerAdmin, le répertoire racine (root) du site zwiicms à /var/www/html/zwiicms.
Par exemple, pour le nom zwiicms.ducouet.fr, créez un fichier /etc/apache2/sites-available/020-zwiicms.conf qui contiendra :

<VirtualHost *:80>
    ServerName zwiicms.ducouet.fr
    ServerAdmin bruno@ducouet.fr
    DocumentRoot /var/www/html/zwiicms
    <Location />
            <LimitExcept GET POST>
                Order allow,deny
                Deny from all
            </LimitExcept>
    </Location>
    <Directory /var/www/html/zwiicms>
            AllowOverride All
            Require all granted
    </Directory>
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Activez le site avec la commande a2ensite 020-zwiicms
root@omega:~# a2ensite 020-zwiicms
Et redémarrer le serveur
root@omega:~# systemctl restart apache2
De votre ordinateur portable, ouvrez votre navigateur à l'adresse http://VotreNom . Si vous êtes sensé être visible depuis internet, vous pouvez tester depuis un téléphone portable après avoir coupé le wifi du téléphone.