【问题标题】:How can i protect a URL/Directory in my site?如何保护我网站中的 URL/目录?
【发布时间】:2013-01-31 18:50:45
【问题描述】:

我想保护我网站中的 URL 例如:www.mysite.com/admin 使用用户“登录” 我不想让任何人看到“admin”目录中的任何内容,甚至是图片或任何其他文件。这怎么可能?我已经阅读了有关会话的信息,但所有这些都可以阻止用户访问网页。我熟悉PHP。请帮忙!

【问题讨论】:

  • 所以你想用 php 或 apache (.htaccess) 来做这个?
  • 你不能用 php 做到这一点,因为如果网络服务器配置不正确,请求不会命中 php,而是找到图像、html 文件等并交付它

标签: php .htaccess


【解决方案1】:

这有点难看,但最简单的方法是对目录进行密码保护,这会在浏览器中弹出一个身份验证弹出类型框。如果您使用的是 Apache,您可以在Apache docs 中找到更多信息。如果您使用的是另一台服务器,他们可能会在某处提供类似的文档。这也可以由 PHP 直接通过发送 correct header 来完成,以便针对数据库进行身份验证,而不是将用户信息存储在文本文件中。

如果您希望将其无缝集成到您的网站中(即没有丑陋的弹出窗口),这有点困难,但可行。 PHP 文件很简单。只需编写某种代码来确定用户是否已登录,如果没有,则不显示内容。但是对于图像或其他静态文件,我建议您这样做:Echo/print a jpg-image with php, for safety?

【讨论】:

    【解决方案2】:

    我不太清楚你的目的是什么

    .htaccess 是在用户知道所有特定路径的情况下帮助您保护数据的一种解决方案 但是这个解决方案需要一些努力来学习

    但是如果您认为没有人知道您的具体路径,那么一种快速简便的方法是创建普通 index.php 以在您拥有的每个文件夹中向想要访问该文件夹的人回应一些措辞,这可以帮助您保护文件夹路径中的目录

    希望有帮助 ;)

    【讨论】:

    • 我假设 OP 正在讨论防止人们直接导航到 /admin/ 子目录中的图像或其他文件。将 index.php 文件放在那里根本没有帮助。如果服务器启用了目录,所有这些都会阻止人们查看目录的内容。另外,关于.htaccess,OP 没有说他们使用的是 Apache,所以这不适用于其他服务器。
    【解决方案3】:

    看看this,你可以根据需要隐藏

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-05-16
      • 2011-05-27
      • 2012-12-13
      • 1970-01-01
      • 1970-01-01
      • 2011-11-26
      • 2017-04-03
      相关资源
      最近更新 更多