Apache
Installation :
sudo apt install apache2
Utilisation
par défaut le répertoire /var/www/html est créer avec un index.html, pour mètre en ligne votre site il suffit de mettre l'intégraliter de vaut fichier de votre server web dans le répertoire /var/www/html.
si vous voulez utiliser des .php il vous faudras installer un paquet :
apt install libapache2-mod-php
Configuration
VirtualHost
chaque site correspond a un virtual host, ces VH sont stoquer dans le répertoire /etc/apache2/sites-available/.
par défaut il existe 2 VH :
- 000-default.conf :
<VirtualHost *:80> # 80 correspond au port, donc le port 80 pour http
ServerAdmin webmaster@localhost # optionel, permet de définir le mail de l'admin
DocumentRoot /var/www/html # défini le répertoire du site web, donc la racine du site web
ErrorLog ${APACHE_LOG_DIR}/error.log #log d'erreur
CustomLog ${APACHE_LOG_DIR}/access.log combined #log d'acces
</VirtualHost>
- default-ssl.conf : ce VH correspond au même site qu'au dessus mais cette vois en https, donc port 443
<VirtualHost *:443>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLEngine on
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
<FilesMatch "\.(?:cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
</VirtualHost>
Crée un VH :
ce VH a valeur d'exemple :
<VirtualHost *:80>
ServerAdmin webmaster@nouveau.fr
ServerName nouveau.fr #défini le nom de domain par lequel le site seras appeler
ServerAlias www.nouveau.fr
DocumentRoot /var/www/nouveau
<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride All #défini si un utilisateur peut ajouter des option dans un .htaccess
Require all granted #défini qui peut accéder au répertoire, peut etre modifie pour autoriser que certaine ip
</Directory>
</VirtualHost>
Pour ajouter un VH vous devez executez ces deux commande :
sudo a2ensite nouveau.fr
sudo systemctl reload apache2