informatique:serveur:web-linux-apache:http_www_apache2

Configurer un site www en http

Voici mes prises de notes pour configurer un site Internet http. Le configuration est destinée pour un site Internet commençant par www.

  Configurer Apache 2 pour un site Internet
    http://www.abonnel.fr

La configuration du site Internet s'effectue dans un fichier de configuration.

  • Il accepte une connexion sur le port http 80.
  • Il permet des connexions sans le www pour être redirigé vers le www.
  • Il permet d'avoir des logs dans des fichiers séparés

On configure un site web à partir d'un fichier conf qui contient des directives. Dans notre exemple de fichier conf, il sera configuré le site Internet abonnel.fr et son alias www.abonnel.fr.

Le fichier à créer est /etc/apache2/sites-available/100-fr.abonnel.conf.

A noter qu'afin de prévenir notre paramétrage futur en https, la directive RewriteCond %{REQUEST_URI} !\.well-known/acme-challenge/.* permet de ne pas rediriger les appels pour Let's Encrypt (http/301). En effet, Let's encrypt n'accepte que des status http/200 lorsque nous mettrons en œuvre l'ajout d'un certificat SSL. Cette directive peut-être laissée active, même si vous ne prévoyez pas d'ajouter une certificat SSL avec Let's Encrypt.

<VirtualHost *:80>

    ServerName abonnel.fr
    ServerAlias www.abonnel.fr
    
    Protocols h2 http/1.1

    DocumentRoot /var/www/abonnel.fr/www

    <Directory /var/www/abonnel.fr/www>
        Options -Indexes +MultiViews
        AllowOverride all
        Order allow,deny
        allow from all
    </Directory>


    <Location />
        Require all granted
    </Location>

    LogLevel warn
    ErrorLog ${APACHE_LOG_DIR}/abonnel.fr-error.log
    CustomLog ${APACHE_LOG_DIR}/abonnel.fr-access.log combined

    # Redirection des URL sans www
    RewriteEngine On
    RewriteCond %{HTTP_HOST} !^www\. [NC]
    RewriteCond %{REQUEST_URI} !\.well-known/acme-challenge/.*
    RewriteRule ^(.*)$ http://www.%{HTTP_HOST}$1 [R=301,L]

</VirtualHost>

On active la configuration du site en utilisant le binaire a2ensite

sudo a2ensite 100-fr.abonnel.conf

Et si tout se passe bien, on recharge la configuration d'Apache 2 sans avoir besoin de redémarre le service :

sudo service apache2 reload
  • informatique/serveur/web-linux-apache/http_www_apache2.txt
  • Dernière modification : 2023/02/09 17:12
  • de Cédric ABONNEL