使用CodeIgniter中的mod_rewrite映射URL

时间:2011-07-20 03:14:48

标签: php codeigniter mod-rewrite

我已经在页面上看到了所有其他人的问题,但我仍然完成了我的问题。 我使用smarty作为我的模板。

我的结构是:

-controllers
  - public
    - home.php
    - about.php
  - admin
-views
  - templates
    - public
      - home.tpl
      - abount.tpl

所以..我链接到关于页面:site_url('public / about.tpl') =>单击该链接时无法访问 =>我意识到我可以通过链接访问该页面:http://localhost/mysite/index.php/public/about

我想删除index.php。 在我的.htaccess中:

RewriteEngine On
RewriteBase /application
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

1 个答案:

答案 0 :(得分:1)

除非您特别配置了它,否则.除非在类和方法之后才能成为URL的一部分。

我认为你可能只需要将site_url('public/about.tpl')更改为site_url('public/about')(还注意到.tlp不在你的localhost示例中)