.htaccess 存在特定查询字符串时允许访问,否则拒绝
当查询字符串中存在.htaccess 存在特定查询字符串时允许访问,否则拒绝,.htaccess,mod-rewrite,apache2,.htaccess,Mod Rewrite,Apache2,当查询字符串中存在s=stick\u path或s=stick\u relative时,我希望允许访问我的站点,否则拒绝访问。e、 g当www.domain.com/?s=stick\u path时允许访问,但当www.domain.com/?s=ck\u relative或www.domain.com/?s=action\u path时拒绝访问 我尝试了一些简单的例子,比如www.domain.com/?s=stick\u path,但它似乎不起作用 RewriteCond %{QUE
s=stick\u path
或s=stick\u relative
时,我希望允许访问我的站点,否则拒绝访问。e、 g当www.domain.com/?s=stick\u path时允许访问,但当www.domain.com/?s=ck\u relative或www.domain.com/?s=action\u path时拒绝访问
我尝试了一些简单的例子,比如www.domain.com/?s=stick\u path,但它似乎不起作用
RewriteCond %{QUERY_STRING} !^s=stick_path$
RewriteRule ^.* - [F,L]
我认为如果s参数出现两次,比如www.domain.com/?s=stick\u path&s=action\u path,就可以欺骗.htaccess规则
更新:
RewriteEngine ON
在.htaccess中丢失。当我尝试转到http://localhost/?s=stick_path
,但如果您想在任何地方检查查询字符串,请尝试:
RewriteCond %{QUERY_STRING} !(^|&)s=stick_path(&|$)
RewriteCond %{QUERY_STRING} !(^|&)s=stick_relative(&|$)
RewriteRule ^.* - [F,L]
如果
s=stick\u path
或s=stick\u relative
位于查询字符串中的任何位置,则此方法有效。我不想在字符串中找到任何位置。它应该是完全匹配的。@新手,如果查询字符串只能是s=stick\u path
,那么您已经做过的就是这样。