日期:2014-05-16 浏览次数:20951 次
对于HTTP 4XX,5XX的出错页面,通常会有以下几种处理方法:
?
1. Apache ErrorDocument
2. Nginx error_page
3. web.xml error-page
4. 应用框架(webx3,Struts)
?
?
问题:
这段时间应用的apache升级为nginx,发现了一个问题,apache和nginx处理出错页面稍有不同。
Apache:?在ErrorDocument配置404A.html,并同时在web.xml的error-page中配置404B.html。访问应用不存在页面,会显示404B.html
?
Nginx:?但是在nginx中,出错页面不会显示web.xml中的配置而直接显示nginx配置的出错页面。
?
?
原因:
经过网上查找了相关资料,发现有可能是下面两个配置开启的原因。
? ? proxy_intercept_errors on;
? ? fastcgi_intercept_errors on;
咨询大牛后,了解,注释这两行即可。经试验确实如此。
?
?
后续:
?
?
?
这两个指令效果的区别:如果你和后端是proxy方式,那设置了fastcig没用。反之也是。
?