0

我有一个基于 codeigniter 的 PHP 网站。它使用模式视图控制器并有文章。每篇文章都有 id 并由 Articles 控制器显示。显示文章后,URL 看起来像http://localhost/ci/articles/show_article/245。现在的问题是任何人都可以输入像246 123 222这样的数字并随机查看文章。我对此感到不舒服。我希望读者按照网站中的组织方式进行操作,并希望阻止他们直接从 URL 访问文章。这如何在 PHP / codeigniter 中实现。??

4

3 回答 3

1

这是无法做到的。您无法控制用户在 Web 浏览器中键入的内容。

于 2012-09-17T18:01:28.923 回答
0

这样做是不可能的,而且你也没有理由对此感到不舒服。您无法阻止客户端请求。我认为任何试图正确使用您的网站(假设设置正确)的人都不会尝试无序浏览文章。

如果你绝对必须这样做,你可以做的就是_SESSION为他们访问过的文章设置一个标志,如果他们试图找到一个乱序的文章,则重定向它们。

于 2012-09-17T18:02:24.400 回答
0

您无法控制浏览器区域之外的用户,如果可以的话。你不应该。

或者,您可以通过自己的模式使用编码的文章 ID 来使其不可预测。当收到这些编码的文章 ID 时,将它们解码并相应地显示文章。

于 2012-09-17T18:07:39.167 回答