【问题标题】:HTTP_REFERER in htaccess not working in Internet Explorer ( IE)htaccess 中的 HTTP_REFERER 在 Internet Explorer ( IE ) 中不起作用
【发布时间】:2014-03-02 04:37:25
【问题描述】:

我有具有以下规则的 htaccess 文件

RewriteEngine On 
RewriteCond %{HTTP_REFERER}   !(inbox/view/\?mail_id).*  [NC]   
RewriteRule ^ - [F,L]

这将确保文件链接仅在单击其 url 中带有“收件箱”、“查看”或“?邮件”的页面时才会打开。它适用于除 IE 之外的主要浏览器。 IE8 和 IE9 抛出 403 Forbidden Access 错误。

感谢任何回应。 谢谢

【问题讨论】:

  • 你应该已经知道referer绝对不可靠......你正在测试的IE可能只是发送none,所以这个房子-你试图在这里粗心构建的“访问保护系统”崩溃了。

标签: .htaccess internet-explorer http-referer


【解决方案1】:

我相信你应该使用

RewriteEngine On 
RewriteCond %{HTTP_REFERER}   !(inbox|view|\?mail_id).*  [NC]   
RewriteRule ^ - [F,L]

我想你收到的 Forbidden 来自你规则中的 [F]。

【讨论】:

  • 谢谢,但这正是你引用的我的代码。该问题是特定于 IE 的,因为其他浏览器遵守该条件。
  • 这不是很有帮助,因为此代码与 OP 的代码相同。
  • 不,代码不同。 OP 的 inbox/view/ 带有斜杠,而这个答案的 inbox|view| 带有管道。
猜你喜欢
  • 2015-05-28
  • 1970-01-01
  • 2013-11-02
  • 2014-04-19
  • 2020-03-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-12
相关资源
最近更新 更多