【问题标题】:Use .htaccess to limit access based on referrer?使用 .htaccess 根据推荐人限制访问?
【发布时间】:2012-05-20 08:18:29
【问题描述】:

我想使用 .htaccess 规则来增强我的博客的 Wordpress 的安全性。基本上,我想在以下情况下禁止连接:

  • useragent 为空
  • referrer 字符串为空
  • 一些选定的 php 文件的引用字符串不是来自我的域

我想出了以下代码。我在正确的轨道上吗?如果没有,请建议我应该做些什么来解决它。谢谢!

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{HTTP_REFERER} ^$
    RewriteCond %{HTTP_USER_AGENT} ^$
    RewriteCond %{REQUEST_URI} wp-comments-post\.php* [NC]
    RewriteCond %{REQUEST_URI} wp-admin\.php* [NC]
    RewriteCond %{REQUEST_URI} wp-login\.php* [NC]
    RewriteCond %{HTTP_REFERER} !.*example.com.* [NC]
    RewriteRule . - [R=403,L]
</IfModule>

【问题讨论】:

  • 我觉得你需要加几个[OR]s。请注意,某些软件和代理会删除引​​荐来源网址。

标签: wordpress .htaccess mod-rewrite user-agent referrer


【解决方案1】:

好的,我想我已经想通了。我能够想出一个我认为有效的 sn-p:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_URI} wp-comments-post\.php* [NC,OR]
    RewriteCond %{REQUEST_URI} wp-admin\.php* [NC,OR]
    RewriteCond %{REQUEST_URI} wp-login\.php*
    RewriteCond %{HTTP_REFERER} !.*tambnguyen.com.* 
    RewriteRule . - [R=403,L]
</IfModule>

当我未登录时,我似乎无法使用新的浏览器窗口/标签访问http://tambnguyen.com/wp-admin/。我可以点击一个秘密链接登录。此外,一旦我登录,我可以访问http://tambnguyen.com/wp-admin/没有问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-05-25
    • 1970-01-01
    • 2021-05-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-27
    相关资源
    最近更新 更多