Apache 2 : reverse-proxy : configurer un site http avec sous-domaine en www

Voici mes prises de notes pour configurer un reverse-proxy avec Apache 2.

  Configurer Apache 2
    http://www.abonnel.fr <==[reverse proxy ]==> 51.23.41.1

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

  • Il accepte une connexion sur le port http 80.
  • Il redirige vers un hébergement par http avec adresse IP
 

On configure un site web à partir d'un fichier conf qui contient des directives. Dans notre exemple de fichier conf configure le site Internet extra.perdu.com.

Le fichier à créer est /etc/apache2/sites-available/100.com.perdu.extra.conf :

<VirtualHost *:80>

    ServerName extra.perdu.com

    ProxyPass /.well-known/acme-challenge !
    Alias /.well-known/acme-challenge /var/www/html/.well-known/acme-challenge

    <Directory "/var/www/html/.well-known/acme-challenge">
        Options None
        AllowOverride None
        Require all granted
        AddDefaultCharset off
    </Directory>

    ProxyPreserveHost On
    ProxyPass        "/" "http://103.224.182.253/"
    ProxyPassReverse "/" "http://103.224.182.253/"

</VirtualHost>

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.

On active la configuration du site en utilisant le binaire a2ensite

sudo a2ensite 100-com.perdu.extra.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

Cédric ABONNEL dit Cédrix 2019/07/26 18:54

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