昨天一网友说自己用thinkphp做的程序无法做404重定向。
当时我就挺纳闷的thinkphp做404也是挺简单的,只要在配置文件里面加上一条‘ERROR_PAGE‘ =>‘/404.html‘就好了,怎么会无法重定向呢?
firebug打开对方的网站随便输入一个错误的地址发现给出了404代码,并且执行了跳转locaction:/404.html,但是页面完全空白,并没有显示404页面的设定内容。
当时就明白啥情况了,老汉当年也遇到这样的问题,google转了n圈才解决。只要在nginx.conf配置文件上加上一句 fastcgi_intercept_errors on; 就ok了。如果没这句的不管是error_page 还是nginx自带的404跳转都不能正常显示(访问不存在的php页面时可能会显示“No input file specified.”)。
时间: 2024-11-14 23:08:04