孙绰 发表于 2013-3-23 02:06:02

怎么样才能保证链接的唯一性?

做网站,一个页面可以通过不同的链接访问是不友好的。

刚开始学习CI,有这样的一个疑惑。比如访问 /test/ 和访问 /test/test/test 都是访问 test::index() 的。

怎么才能避免同一个页面有且仅有一个可访问的链接呢。


很喜欢 python的 web.py框架。 用正则严格匹配request_uri 。这样每个页面必须有且仅有一个链接。

刚才实验了ci的正则模式的路由,$route['^test$'] = "test/index";

这个依然可以被 /test/test/test 访问到。


怎么样避免这个问题呢。能不能严格按照正则匹配?


求解惑,谢谢!!!

Altair 发表于 2013-3-24 01:36:42

楼主您好,或许您问了一个在实际应用中并没有意义的问题。没有冒犯的意思。CI的路由是基于“段”的,不同的段有不同的含义,具体你看这里或许就不会纠结了

孙绰 发表于 2013-3-24 12:28:34

Altair 发表于 2013-3-24 01:36 static/image/common/back.gif
楼主您好,或许您问了一个在实际应用中并没有意义的问题。没有冒犯的意思。CI的路由是基于“段”的,不同的 ...

实际应用中没有意义?好吧。

amu 发表于 2013-3-24 14:22:04

你的路由正则写的有问题,你正直接试试这个:$route['test'] = "test/index";

孙绰 发表于 2013-3-25 00:55:44

amu 发表于 2013-3-24 14:22 static/image/common/back.gif
你的路由正则写的有问题,你正直接试试这个:$route['test'] = "test/index";

谢谢回复。

按您说的设置。


/test/adfadfadfadf


依然是可以访问的。

amu 发表于 2013-3-25 10:04:49

孙绰 发表于 2013-3-25 00:55 static/image/common/back.gif
谢谢回复。

按您说的设置。


还有一个办法那就是地址栏中的控器名与实际控制器名字不要取成一样的。
如:www.test.com/test
控制器名为:abc

路由设置:
$route['test'] = "abc";
页: [1]
查看完整版本: 怎么样才能保证链接的唯一性?