0

我已经检查了 codeigniter 用户指南,但我没有幸运地解决我的问题。

我在本地主机上创建了一个网页。

我去的http://localhost/webpage/时候就没事了。它将转到默认控制器。

我的默认控制器是Homepage并且有名为的方法indexguarantee并且about

当我转到我的 routes.php 时,我添加了这个:

$route['guarantee'] = "homepage/guarantee";
$route['about_us'] = "homepage/about";

然后尝试访问它http://localhost/webpage/guaranteehttp://localhost/webpage/about_us显示 ERROR 404

但是当我这样做时,$route['default_controller'] = "homepage/guarantee";将显示保证页面。

谁能帮我解决这个问题?谢谢。

4

2 回答 2

1

在你的application/config/config.php, 设置$config['index_page']为空的 $config['index_page'] = '';应该可以工作。

于 2012-06-04T16:14:37.713 回答
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>  
于 2012-06-04T16:15:30.397 回答