Apache fonctionne comme un proxy inverse en utilisant mod_proxy
modproxy est le module Apache permettant de rediriger les connexions (c'est-à-dire une passerelle les traversant). C'est comme n'importe quel autre module et la configuration est assez basique, en ligne avec les autres.
modproxy n'est pas un simple module, mais une collection d'entre eux, chacun apportant un nouvel ensemble de fonctionnalités.
Certains de ces modules sont:
- mod_proxy: le module proxy principal pour Apache qui gère les connexions et les redirige.
- modproxyhttp: Ce module implémente les fonctionnalités de proxy pour les protocoles HTTP et HTTPS.
- modproxyftp: Ce module fait la même chose mais pour le protocole FTP.
- modproxyconnect: Celui-ci est utilisé pour le tunneling SSL.
- modproxyajp: Utilisé pour travailler avec le protocole AJP.
- modproxywstunnel: utilisé pour travailler avec des sockets Web (c.-à-d. WS et WSS).
- modproxybalancer: utilisé pour la mise en cluster et l'équilibrage de charge.
- mod_cache: utilisé pour la mise en cache.
- mod_headers: utilisé pour gérer les en-têtes HTTP.
- mod_deflate: utilisé pour la compression.
sur un VPS managé vous activez ces modules avec la commande suivante:
sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2enmod proxy_ajp
sudo a2enmod rewrite
sudo a2enmod deflate
sudo a2enmod headers
sudo a2enmod proxy_balancer
sudo a2enmod proxy_connect
sudo a2enmod proxy_html
Dans cet article nous allons illustrer une configuration à l'aide d'un sous-domaine.
Cliquez ici pour voir comment créer un sous-domaine
Après avoir installer le sous domaine suivre les étapes suivantes:
Supposons que vous avez créé le sous-domaine dev.example.net
cd /etc/apache2/sites-available
sudo vi $(sudo grep -rl 'dev.example.net')
Ajouter y le contenu ci-dessous.
Remplacez le port 8080 par le port écouté par votre application. Et dev.example.net par votre véritable nom de domaine ou sous-domaine
<VirtualHost *:80>
ServerName dev.example.net
ServerAdmin [email protected]
<IfModule security2_module>
SecRuleEngine Off
</IfModule>
ProxyRequests Off
ProxyPreserveHost On
<Proxy *>
Order allow,deny
Allow from all
</Proxy>
ProxyPass / http://0.0.0.0:8080/
ProxyPassReverse / http://0.0.0.0:8080/
ErrorLog ${APACHE_LOG_DIR}/example_error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Rassurez-vous bien qu'il ya aucune erreur de configuration sur le serveur apache
sudo apache2ctl -t
Dans le cas idéal vous obtenez la reponse suivante:
Syntax OK
Le cas écheant, resolvez le problème avant de continuer
Et pour terminer redemarrez le serveur apache.
sudo systemctl reload apache2
Commentaires
0 commentaire
Vous devez vous connecter pour laisser un commentaire.