将Apache配置为反向代理
时间:2020-02-23 14:29:43 来源:igfitidea点击:
Apache还可以配置为用作反向代理。
反向代理显示给客户端,就像普通的Web服务器一样,不需要在客户端上进行特殊配置。
客户对内容进行普通请求。
然后,反向代理决定发送这些请求的位置并返回内容,就像它本身一样。
反向代理通常用于提供Internet用户访问防火墙后面的服务器或者在几个后端服务器之间平衡负载。
以下是我们如何将Apache配置为反向代理:
首先,我们需要启用代理,proxy_http和proxy_connect模块。
我们可以使用A2ENMOD命令执行此操作:
sudo a2enmod proxy proxy_http proxy_connect
接下来,转到"/etc/apache2/mods的目录"并在我们选择的文本编辑器中打开文件Proxy.conf。
取消注释: ProxyRequests On 这行,<proxy*>块和Proxyvia Off这行。
将ProxyRequests更改为OFF和Proxyvia 改为On.
ProxyRequests 0ff <Proxy *> AddDefaultCharset off Require all denied Require local </P roxy> # Enable/disable the handl ing of HTTP/1.1 "Via:" headers . # ("FulL" adds the server version ; "Block" removes all outgoing Via: he$ #Settooneof:Off|0n|Full|Block ProxyVia 0n
现在,在/etc/apache2/sites可用目录中创建一个新文件。
我们将调用我们的文件reverse_proxy.conf。
这是文件的配置:
<VirtualHost *:80> ServerName msn.local ProxyPass/http://www.msn.com <Proxy "*"> Require ip 192.168 </Proxy> </VirtualHost>
使用sudo a2ensite reverse_proxy.conf命令启用并重新启动Apache。
当内部客户端请求msn.local时,他或者她将被重定向到www.msn.com,由Proxypass指令指定。