Codeigniter和mod_rewrite,重写不起作用,404错误

时间:2014-08-27 08:30:49

标签: php apache .htaccess codeigniter mod-rewrite

我对CodeIgniter和mod_rewrite模块存在问题。 在Apache中,我遵循了我在ellislab博客中找到的所有指令。因此删除index.php也很有用。现在我有了这个文件.htaccess:

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteBase /
    #RewriteRule ^box/$    create/$1   # Handle requests for "pet-care"
    RewriteRule ^about/$ aboutus
    RewriteRule ^(.*)$ index.php?/$1 [L,QSA]


</IfModule>

<IfModule !mod_rewrite.c>
    # In caso di mancanza di installazione del modulo mod_rewrite,
    # tutte le pagine 404 possono essere inviate ad index.php
    # e tutto funzionera' normalmente

    ErrorDocument 404 /index.php
</IfModule>

我无法开始工作的是

#RewriteRule ^about/$ aboutus

我想在localhost / about中重写我的localhost / aboutus。我是一个叫做aboutus的控制器,它指的是一个关于onus的视图。
另一个问题是当我有这样的网址结构时:

localhost/controller/function/param1/param2

我希望转换成:

localhost/myname/param1

无法弄明白:(

1 个答案:

答案 0 :(得分:0)

也许您只需配置:

$route['product/(:num)'] = "catalog/product_lookup_by_id/$1";

在这个网址中:

https://ellislab.com/codeigniter/user-guide/general/routing.html

你可以找到一些我认为会有帮助的问题