Apache-2.2
Apache ProxyPass 排除。不要代理 404 地址
我正在嘗試使用 Apache 設置反向代理,並且在大多數情況下它與
ProxyPass
. 我想排除一個我理解我可以用!
指標做的目錄,記錄在這裡:http ://httpd.apache.org/docs/current/mod/mod_proxy.html#proxypassreverse所以我有:
ProxyPass /examples ! ProxyPass / http://localhost:3000/
如果我轉到一個
/examples
存在的文件,這可以正常工作,但如果我點擊一個導致 404 錯誤的地址,請求將被代理,而不僅僅是返回 404。我寧願返回 404。我在文件中看不到任何關於此的內容 - 有誰知道如何做到這一點?非常感謝!
這是 Apache v2.4.6。
根據您的 Apache 設置,已在 ProxyPass 中排除的 /examples 位置之外定義了預設錯誤文件。我的 RHEL 6 有預設值:
Alias /error/ "/var/www/error/" ErrorDocument 404 /error/HTTP_NOT_FOUND.html.var
這將導致任何 404 消息被重定向到
/error/HTTP_NOT_FOUND.html.[en | es | de | fr ]
取決於瀏覽器的接受語言設置並生成 404 錯誤。在您的情況下,這意味著請求
/examples/no-such-file
仍將被重定向到http://localhost:3000/
.其次,您可能想調查
ProxyPassReverse
您從範例配置中省略的指令的含義。