我正在开发一个使用codeigniter的新网站,这是我的第一个codeigniter体验。我怀疑有些东西与404错误无关,当我尝试加载一个不存在的控制器或现有控制器的功能错误时,我找回了标准的Web服务器404错误,而不是codeigniter错误。Codeigniter不显示404错误页面
我没有碰到路由配置文件中的“404_override”选项。 这是正常的吗?我期望(但也许我错了),在这些情况下show_404()函数被调用。
我正在开发一个使用codeigniter的新网站,这是我的第一个codeigniter体验。我怀疑有些东西与404错误无关,当我尝试加载一个不存在的控制器或现有控制器的功能错误时,我找回了标准的Web服务器404错误,而不是codeigniter错误。Codeigniter不显示404错误页面
我没有碰到路由配置文件中的“404_override”选项。 这是正常的吗?我期望(但也许我错了),在这些情况下show_404()函数被调用。
您的.htaccess文件是否设置正确?
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
您必须设置.htaccess文件才能使自定义错误页面正常工作。结帐官方documentation。
我没有删除index.php,因为我在IIS6的Web服务器上,没有办法做到这一点(我几分钟前检查)。在Apache服务器上正确加载CI错误消息,而IIS服务器不断显示旧的丑陋404页面。 – rigobot 2012-07-12 15:30:14
用可能的解决方案编辑我的答案。 – Robert 2012-07-12 15:57:26
对不起,这个重写引擎是否必须使CodeIgniter正常工作?我的意思是,如果我不需要在url中删除“index.php”段,为什么我应该设置一个重写引擎? 谢谢你的帮助! – rigobot 2012-07-12 19:13:27