有人可以举例解释一下这段代码吗:
ProxyPreserveHost On
<Proxy *>
Order allow,deny
Allow from all
</Proxy>
ProxyPass / http://localhost:3333/complaints.php
ProxyPassReverse / http://localhost:3333/complaints.php
</VirtualHost>"
PS此代码写在虚拟主机的配置文件中soldier.io
答案1
这段代码将 Apache 变成一个代理服务器,因此 Apache 会应答请求然后获取资源。
ProxyPreserveHost On
当从服务器获取请求时,Apache 会添加一个标头(称为 X-Forwarded-For),其中包含请求 IP 地址。这意味着适当配置的程序仍然可以知道原始请求者的 IP 地址,并且正在使用代理。
<Proxy *>
Order allow,deny
Allow from all
</Proxy>
ProxyPass / http://localhost:3333/complaints.php
ProxyPassReverse / http://localhost:3333/com
这些库使 Apache 能够执行代理,并允许任何请求。当有人访问 soldiers.io/ 时,ProxyPass 和相关的 ProxypassReverse 行将连接到本地机器上的端口 3333 并请求 URL complaints.php,然后它会将其返回给客户端。
(您将发现有某种类型的 Web 服务器在 localhost:3333 中应答)