我的网站的Codeigniter URL路由解决方案

时间:2013-06-14 04:21:52

标签: codeigniter routing

我有一个使用CodeIgniter开发的网站。我已经为我的网址添加了以下路线:

$route['about_us'] = 'about-us';

现在我遇到了问题。即当我正在寻找网址www.mysite.com/about_us时,它可以工作,同时www.mysite.com/about-us也在工作。我只想要一个网址:带有下划线的网址。

我已删除此内容:

$route['about_us'] = 'about-us';

但网址www.mysite.com/about-us仍然有效。它可能会导致我的网站在Google中出现重复内容,因此会显示更多页面链接。即使我也没有这个功能。像www.mysite.com/about_us/design一样。同样在about_us控制器文件中只有索引函数,但在Google中调用的设计方法。

如何解决此问题?

1 个答案:

答案 0 :(得分:1)

这里你实际上不需要路线。请求路由的正常目的是使用它的方式,以便在类和函数名称中不允许使用连字符时可以使用带连字符的URL。 I.E.你想要的网址是www.example.com/test-controller,但你实际上不能命名控制器test-controller,因为连字符是非法的。

如果您只想拥有www.mysite.com/about_us等强调网址,则只需完全删除该路由,并将控制器命名为about_us。如果没有路由规则,带连字符的网址应为404。