我的网站受到用户点击此网址变化的影响 /index.php?s =
我试图阻止对以下字符串的所有请求,这些字符串应该摆脱所有垃圾邮件发送者 php?s =
我似乎遇到的问题是?和/在htaccess文件中是受保护的字符,我只是无法得到正确的语法。如何在以下场景中使用 php?s = ?
我试过了
<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{REQUEST_URI} ^.(*php?s=).* [NC] RewriteRule ^(.*)$ - [F,L] </IfModule>
和
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} ^.*php?s=$1&%{QUERY_STRING}.* [NC]
RewriteRule ^(.*)$ - [F,L]
</IfModule>
和
<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{THE_REQUEST} ^.*(php?s=$1&%{QUERY_STRING}).* [NC] RewriteRule ^(.*)$ - [F,L] </IfModule>
但没有任何作用。求救!
答案 0 :(得分:1)
试
#all .php requests with s= in querystring
RewriteCond %{REQUEST_URI} ^.+\.php$ [NC]
RewriteCond %{QUERY_STRING} ^s=.*$ [NC]
RewriteRule . - [F,L]
如果你想在任何查询字符串位置阻止s=
,请用
#block s= in any location
RewriteCond %{QUERY_STRING} ^(.*&)?s=.*$ [NC]
答案 1 :(得分:0)
您也可以尝试在执行任何操作之前阻止它们