我想知道ProxyPass是否工作。
ProxyPass /dontexist.php http://localhost:8888/allo.html ProxyPassReverse /dontexist.php http://localhost:8888/allo.html
当我这样做,它不会返回allo.html的内容,但一个404错误。 这是否意味着代理不起作用?
如果代理不工作,你可能会得到一个502响应代码。
如果您设置LogLevel debug ,然后检查您的Apache error_log ,它将是非常清楚的行为是什么。
您还应该validation您可以在端口8888上点击HTTP服务器,并响应/allo.html:
curl http://localhost:8888/allo.html
如果你得到一个200响应,那么你的代理不工作(因为它返回一个404)。
ProxyPass / ProxyPassReverse的第一个参数是一个path ,我个人从来没有使用它给出一个包含文件名的path(但是我认为我已经通过mod_rewrite使用[P]标志来完成了,这可能是你的问题。
我已经看到(和使用)ProxyPass的典型格式指定不包含文件名的path,如:
ProxyPass / http://localhost:8888/
(也许别人能够根据经验来澄清这种特殊的细微差别)