使用PHP CodeIgniter开始使用URL路由

时间:2010-04-06 11:56:52

标签: php codeigniter url-routing

我只想到路由我的网址,就像

一样

http://localhost/codeigniter_cup_myth/index.php/adminController/mainAccount

如果是

那就太好了

http://localhost/codeigniter_cup_myth/Accounts/mainAccount

在我的网络应用程序中路由URL时应该从哪里开始?

3 个答案:

答案 0 :(得分:3)

路由定义如下:

$route['product/:num'] = "catalog/product_lookup";

其中product / anynumber是您的网址:http://www.example.com/product/234。第二部分是控制器/方法。我们在这里讨论的URL将调用目录控制器的product_lookup方法。

$route['accounts/mainaccount'] = "adminController/mainAccount"

会触发您正在寻找的东西。有关更多示例,请查看CodeIgniter User Guide

我使用此.htaccess

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?/$1 [L]

允许访问任何实际存在的文件,其他所有文件都将路由到CI。

答案 1 :(得分:2)

另外,添加如下内容:

RewriteEngine on
RewriteCond $1 !^(index\.php|images|css|js|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]

到您的.htaccess文件将摆脱index.php部分

答案 2 :(得分:1)

你可以查看woo url路由组件

http://code.google.com/p/woo/

woo url路由功能:

  1. 轻松添加自定义和动态路由网址以路由集合。
  2. 很容易创建约束,限制与修指路线匹配的网址。
  3. 在路线比赛中支持catchall风格。
  4. 使用路由调试器在浏览器地址栏中直接键入URL地址时,在路由集合中显示路由匹配状态。
  5. 创建自定义路由处理程序以处理与路径集合中的特定路径匹配的URL。