我在linux环境中运行apache2 webserver。我想将用户重定向到自定义错误页面。所以创建了错误页面&在htdocs中创建了符号链接也是这样的。 static-files - > /应用/静态文件。 在httpd.conf文件中,我创建了虚拟主机定义并包含了错误页面,如下所示:
NameVirtualHost m.mydomain.com:80
<VirtualHost m.mydomain.com:80>
DocumentRoot "/app/httpd-2.2.15/htdocs"
ServerName m.mydomain.com:80
<Directory "/static-files/html/error_pages">
Options FollowSymLinks
Order allow,deny
Allow from all
</Directory>
ErrorLog /app/httpd-2.2.15/logs/error_my_log
ErrorDocument 400 /static-files/html/error_pages/error_400.html
ErrorDocument 401 /static-files/html/error_pages/error_401.html
ErrorDocument 403 /static-files/html/error_pages/error_403.html
ErrorDocument 404 /static-files/html/error_pages/error_404.html
ErrorDocument 408 /static-files/html/error_pages/error_408.html
ErrorDocument 500 /static-files/html/error_pages/error_500.html
ErrorDocument 501 /static-files/html/error_pages/error_501.html
ErrorDocument 502 /static-files/html/error_pages/error_502.html
ErrorDocument 503 /static-files/html/error_pages/error_503.html
ErrorDocument 504 /static-files/html/error_pages/error_504.html
</VirtualHost>
当我的应用服务器关闭时,它不会将我重定向到503自定义错误页面。我只获取服务器特定的错误页面。但是如果我把这个ErrorDocument从虚拟主机定义中删除它会将我重定向到自定义错误页面。我打了3天钟。但是没能找到原因。我在所有浏览器中试过。有人可以帮助我吗?
答案 0 :(得分:1)
当您将DocumentRoot定义为“ /app/httpd-2.2.15/htdocs”时,错误页面应位于此目录中。您确定错误页面在此目录中吗?
答案 1 :(得分:0)
我不是百分百肯定,但当你在Apache后面运行一个app服务器时,当它关闭时,你找不到404。 这不是503的答案。当服务器(App服务器的Apache)出现故障(例如加载)或者在未命中配置后可能发生的任何事情时,会发生503。