php - 使用 .htaccess 保护 HTML 文件

标签 php html security .htaccess

我的 PHP 应用程序使用 404 文档生成 HTML 文件,因此对同一 HTML 文件的多次查询只会导致生成运行一次。

我想拦截对 HTML 文件的请求,以便用户需要建立 PHP session 才能提取文件。

在最好的情况下,SESSION ID 将被用在 URL 中并强制它可以用作进一步的身份验证。例如,登录会向您发送一个 SessionID,并使您只能访问某些 HTML 文件。

我知道通过更改我的 cookie 我可以欺骗请求,但这没关系。

我该怎么做?

最佳答案

像这样的东西可以工作(我还没有测试过):

RewriteCond %{HTTP_COOKIE} PHPSESSID=([a-zA-Z0-9]+)
RewriteCond %{REQUEST_FILENAME} %{REQUEST_FILENAME}-%1.html
RewriteRule ^ %{REQUEST_FILENAME}-%1.html

它假定您将 "-$session_id.html" 附加到文件名($session_id 是 PHP 的 session ID)。

它应该是安全的,好处是文件由 Web 服务器直接提供,根本不需要调用 PHP。

关于php - 使用 .htaccess 保护 HTML 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/623788/

相关文章:

java - Jsoup - 只保留标签并删除所有文本

php - FPDF 错误 : Alpha channel not supported:

internet-explorer - HTTPS 安全受到损害错误。如何修复?

xss - 使用img src属性中的javascript进行XSS攻击

php - 全新安装的 laravel 5.6 在索引页面中获取 HTTP ERROR 500

php - 我应该在 Windows Server 2008 Enterprise 上安装 xampp 吗

javascript - 基于轮播的图像库,带有缩略图和标题

apache-flex - Action : connect to socket server

php - 如何对mysql的选择结果进行升序编号?

php - 使用/jQuery 进行简单的电子邮件验证