Maison >développement back-end >tutoriel php >Hôte virtuel Apache : ajout d'un proxy inverse
Un proxy inverse agit comme un intermédiaire qui transmet les requêtes des clients vers d'autres serveurs. Il est souvent utilisé pour l'équilibrage de charge, la sécurité, la mise en cache ou pour transférer des requêtes HTTP vers des serveurs backend (par exemple, une application exécutée sur Node.js, Python, PHP ou un autre serveur).
Apache vous permet de configurer cela à l'aide de ses modules mod_proxy et mod_proxy_http. Voici un guide sur la façon de procéder.
Nous allons configurer Apache comme proxy inverse pour un service backend, tel qu'un serveur exécuté sur localhost sur le port 8080.
1.Activer les modules nécessaires
Tout d'abord, vous devez activer les modules proxy dans Apache :
sudo a2enmod proxy sudo a2enmod proxy_http
Redémarrez Apache pour que les modules prennent effet :
sudo systemctl restart apache2
2.Configurer l'hôte virtuel avec proxy inverse
Modifiez maintenant le fichier de configuration de votre hôte virtuel que nous avons créé précédemment pour ajouter les directives proxy.
Ouvrez le fichier de configuration :
sudo your_editor /etc/apache2/sites-available/php.conf
ajoutez les lignes de configuration du proxy à l'intérieur du fichier
<VirtualHost *:80> ServerAdmin webmaster@localhost ServerName php.info DocumentRoot /var/www/html/php # Reverse Proxy Directives ProxyPreserveHost On ProxyPass / http://localhost:8080/ ProxyPassReverse / http://localhost:8080/ <Directory /var/www/html/php/> AllowOverride All Require all granted </Directory> # Logs for debugging ErrorLog ${APACHE_LOG_DIR}/php_error.log CustomLog ${APACHE_LOG_DIR}/php_access.log combined </VirtualHost>
Ces directives font ce qui suit :
3.Redémarrez Apache
Après avoir effectué les modifications, redémarrez Apache :
sudo systemctl restart apache2
4.Tester le proxy inverse
Désormais, lorsque vous accédez à http://php.info, Apache transmettra les requêtes au backend qui écoute sur http://localhost:8080.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!