0

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

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

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

我已将其删除为:

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

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

我该如何解决这个问题?

4

1 回答 1

1

您实际上不需要这里的路线。以您使用它的方式请求路由的正常目的是,当类和函数名称中不允许使用连字符时,您可以使用带连字符的 URL。IE 您希望 url 指向 by www.example.com/test-controller,但实际上不能命名控制器test-controller,因为连字符是非法的。

如果您只想使用带下划线的 URL,www.mysite.com/about_us那么只需完全删除路由并命名控制器about_us。如果没有路由规则,连字符的 url 应该是 404。

于 2013-06-14T04:41:42.177 回答