Apache mod|u rewrite | RewriteCond不';行不通

Apache mod|u rewrite | RewriteCond不';行不通,apache,.htaccess,mod-rewrite,Apache,.htaccess,Mod Rewrite,我拥有一个WordPress站点,并且在/wp-login.php上受到DDoS攻击。我想做的是,用mod_rewrite限制对这个文件的访问,但是没有运气 更具体地说,我正在尝试做的是,只允许用户使用查询字符串中的keywork google来访问此文件。如果关键字不存在,那么我想将用户重定向到google网站 例如: 允许: 重定向:到 我使用的htaccess如下所示,但似乎不起作用: <IfModule mod_rewrite.c> RewriteEngine O

我拥有一个WordPress站点,并且在/wp-login.php上受到DDoS攻击。我想做的是,用mod_rewrite限制对这个文件的访问,但是没有运气

更具体地说,我正在尝试做的是,只允许用户使用查询字符串中的keywork google来访问此文件。如果关键字不存在,那么我想将用户重定向到google网站

例如:

  • 允许:
  • 重定向:到
我使用的htaccess如下所示,但似乎不起作用:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /

    RewriteCond %{REQUEST_FILE} \/wp\-login\.php
    RewriteCond %{QUERY_STRING} !google
    RewriteRule (.*) http://www.google.com/ [R=301,L]
</IfModule>

重新启动发动机
重写基/
重写cond%{REQUEST_FILE}\/wp \-login\.php
重写cond%{QUERY_STRING}!谷歌
重写规则(.*)http://www.google.com/ [R=301,L]
如何重写此规则,以允许上述功能正常工作

注意:我已经尝试了上述规则,但没有第一次重写检查请求的文件名,并且重定向到google的格式是正常的,但是我想做的是限制重定向只针对wp-login.php


亲切问候

将您的代码替换为:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /

    RewriteCond %{QUERY_STRING} !^google [NC]
    RewriteRule ^wp-login\.php$ http://www.google.com/ [R=301,L,NC]
</IfModule>

重新启动发动机
重写基/
重写cond%{QUERY_STRING}^谷歌[NC]
重写规则^wp login\.php$http://www.google.com/ [R=301,L,NC]
请确保在其他浏览器中进行测试或清除浏览器缓存