当用户在URL中键入index.php时,我需要显示404页面:
http://localhost:8080/site_name/index.php/home
我在routes.php $route['index.php/(:any)'] = 'custom404';
没有帮助;当用户输入http://localhost:8080/site_name/index.php/home
主页时显示而不是404。
当用户在网址中输入index.php时,知道如何显示404页面吗?
我的htaccess:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /site_name/index.php/$1 [L]
答案 0 :(得分:0)
将默认控制器设置为custom404
$route['default_controller'] = "custom404";
或者你可以试试这个:
$route['index.php/^(.+)$'] = "custom404";
答案 1 :(得分:0)
您可以同时从网址中删除index.php。它默认启用CodeIgniter,但您可以轻松删除它,只需按照其用户指南中的指南操作: http://codeigniter.com/user_guide/general/urls.html
编辑:还应该知道url中的index.php不是你的控制器的一部分,它只是CodeIgniter放置的东西,所以你不能通过使用你的路由删除它。