反向代理充当将客户端请求转发到其他服务器的中介。它通常用于负载平衡、安全、缓存或将 HTTP 请求转发到后端服务器(例如,在 Node.js、Python、PHP 或其他服务器上运行的应用程序)。
Apache 允许您使用其 mod_proxy 和 mod_proxy_http 模块进行配置。这是有关如何执行此操作的指南。
我们将配置 Apache 作为后端服务的反向代理,例如在端口 8080 上的本地主机上运行的服务器。
1.启用必要的模块
首先,您需要在 Apache 中启用代理模块:
sudo a2enmod proxy sudo a2enmod proxy_http
重启Apache以使模块生效:
sudo systemctl restart apache2
2.使用反向代理配置虚拟主机
现在编辑我们之前创建的虚拟主机的配置文件以添加代理指令。
打开配置文件:
sudo your_editor /etc/apache2/sites-available/php.conf
在
<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>
这些指令执行以下操作:
3.重新启动 Apache
进行更改后,再次重新启动 Apache:
sudo systemctl restart apache2
4.测试反向代理
现在,当您访问 http://php.info 时,Apache 会将请求转发到监听 http://localhost:8080 的后端。
以上是Apache 虚拟主机:添加反向代理的详细内容。更多信息请关注PHP中文网其他相关文章!