是否有 curl 命令可以验证服务器是否充当开放代理?
我试过了
curl --proxy http://<my server>:80 http://yahoo.com
但是apache的响应是:
Description: Could not process this "GET" request.
答案1
您可以使用 Telnet 来验证:
telnet yoursite.example.com 80
GET http://www.yahoo.com/ HTTP/1.1
Host: www.yahoo.com
答案2
简单的答案是这样的,如果ProxyRequests On
您的配置中某处有(默认为关闭),那么您可能正在运行开放代理,如果没有,那么您就没有,至少从 Apache 配置方面来看是这样。
如果您的访问日志中仍然出现200 OK
看起来像转发代理请求的请求条目,则可能是因为您有映射的 catchall 重写任何请求到控制器,无论它看起来如何。如果您担心,您可以添加条件来防止这种情况。