我正在尝试在Apache上设置自定义403和404错误页面。
Server config is as follows:
Server version: Apache/2.4.29 (Ubuntu)
Server built: 2019-04-03T13:22:37
Ubuntu 18.04.2 LTS
我将Apache用于AJP反向代理,如下所示:
ProxyVia On
ProxyRequests Off
ProxyPreserveHost On
ProxyPass /app ajp://localhost:8009/share
ProxyPassReverse /app ajp://localhost:8009/share
我的ErrorDocument代码如下:
ErrorDocument 404 /cah-404.html
ErrorDocument 403 /cah-403.html
现在,如果我通过浏览器转到上述应用,例如“ https://server.xyz/app”,则会收到类似以下的消息:
Forbidden
You don't have permission to access /app/ on this server.
Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request.
Apache/2.4.29 (Ubuntu) Server at server.xyz Port 443
我的自定义错误页面位于/ var / www / html 这些页面上的权限是444
任何想法为何会发生此错误? 我正在尝试从未经授权的ISP访问该页面。因此,禁止显示是很好的-但它应该显示自定义的禁止页面。
答案 0 :(得分:0)
我已使用以下方法解决了此问题: https://serverfault.com/questions/266924/apache-reverse-proxy-error-page-when-proxied-server-is-down
答案的关键部分是“您应该使用URL指向您的ErrorDocument,否则,如果您使用文件系统引用,则在尝试查找它时会得到另外的503。”
所以现在,我的errordocument指令看起来像:
ErrorDocument 404 http://server.xyz/cah-404.html
ErrorDocument 403 http://server.xyz/cah-403.html