为Codeigniter Controller设置自定义URL

时间:2016-05-17 17:31:58

标签: codeigniter

请任何人建议如何缩短网址

http://localhost:8080/MyWebApp/index.php/Cpanel_control/

http://localhost:8080/MyWebApp/Cpanel
使用路线在Codeigniter中

我以这种方式尝试了

$route['Cpanel'] = "MyWebApp/index/Cpanel_control";

但没有工作

2 个答案:

答案 0 :(得分:1)

要从CI中的网址中删除index.php,您需要.htaccess文件。 看看https://gist.github.com/philipptempel/4226750

我假设Cpanel_control是一个有效的控制器。

对于路由,您可以在路由设置

中使用此功能
$route['Cpanel'] = "Cpanel_control";

要避免任何其他问题,请确保配置文件中的base_url已设置为

$config['base_url'] = "http://localhost:8080/MyWebApp";

答案 1 :(得分:0)

新方法

路由:

  

但是,在某些情况下,您可能希望重新映射此关系   可以调用不同的类/方法而不是一个   对应于URL。

CI文档的摘录显示您无法在此处使用路由。相反,你应该去 mod_rewrite 规则(.htaccess)

RewriteEngine On
RewriteRule ^index/Cpanel_control/(.*) Cpanel/$1 [R]

旧方法

根据corresponding documentation,路径都不是绝对的。此外,您需要将“from”-URI设置为数组键,将“to”URI设置为字符串。如果您想将index/Cpanel_control路由到Cpanel,则需要交换示例的URI。

所以这是正确的:

$route['index/Cpanel_control'] = "Cpanel";