Je m'inspire du principe de configuration avec les répertoires conf-available et conf-enabled. La configuration du site www.exemple.com sera placée dans un répertoire conf-sites/www.exemple.com.
Chaque répertoire comportera des fichiers X.conf et des fichier X.htaccess qui seront appelés dans les fichiers de configuration de chaque site.
Tous les fichiers du répertoire conf-available sont utilisables. Les fichiers .htaccess sont utilisés en remplacement du fichiers .htaccess de la racine d'un site pour des raisons de performance.
<VirtualHost *:80> ServerName www.test.dev ServerAdmin webmaster@localhost DocumentRoot /home/pascal/dev/www.test.dev/web <Directory /home/pascal/dev/www.test.dev/web/> IncludeOptional conf-sites/www.test.dev/*.htaccess </Directory> IncludeOptional conf-sites/www.test.dev/*.conf </VirtualHost>
ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined
Options Indexes FollowSymLinks AllowOverride None
SSLEngine on SSLCertificateFile /srv/certs/ssl-cert-mazarini.ovh.crt SSLCertificateKeyFile /srv/certs/ssl-cert-mazarini.ovh.key SSLCertificateChainFile /srv/certs/sub.class1.server.ca.pem SSLCACertificateFile /srv/certs/ca.pem # MSIE 7 and newer should be able to use keepalive BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown
AuthName "Connexion" AuthUserFile /srv/divers/htpasswd Require valid-user
Require all granted