我已经检查了codeigniter用户指南,但我没有幸运解决我的问题。
我在本地主机上创建了一个网页。
当我去http://localhost/webpage/
时,没关系。它将转到默认控制器。
我的默认控制器为Homepage
,并且有一些名为index
,guarantee
和about
的方法
当我去我的routes.php时,我添加了这个:
$route['guarantee'] = "homepage/guarantee";
$route['about_us'] = "homepage/about";
然后尝试访问它http://localhost/webpage/guarantee
和http://localhost/webpage/about_us
它显示ERROR 404
但是当我这样做$route['default_controller'] = "homepage/guarantee";
时,将显示保证页面。
任何人都可以帮我解决这个问题吗? 感谢。
答案 0 :(得分:1)
在application/config/config.php
中,将$config['index_page']
设为空
$config['index_page'] = '';
应该有用。
答案 1 :(得分:1)
您需要删除index.php。在您的application / config.php文件中更改
$config['index_page'] = 'index.php';
到
$config['index_page'] = '';
然后将此.htaccess文件放在根文件夹中(与index.php所在的文件夹相同:
Options -Indexes
Options +FollowSymLinks
# Set the default file for indexes
DirectoryIndex index.php
<IfModule mod_rewrite.c>
# Activate URL rewriting:
RewriteEngine on
# do not rewrite links to the documentation, assets and public files
RewriteCond $1 !^(uploads|assets|js|css|images|img)
# but rewrite everything else
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>
<IfModule !mod_rewrite.c>
# If we don't have mod_rewrite installed, all 404's
# can be sent to index.php, and everything works as normal.
ErrorDocument 404 index.php
</IfModule>