.htaccess Apache mod_rewrite - unknown flag 'AND'

vktxenjb  于 2023-06-24  发布在  Apache
关注(0)|答案(1)|浏览(188)

这些规则在apache 2.2.34上不起作用

RewriteCond %{HTTP_HOST} !^subdomain\.domain\.com$ [NC,AND]
RewriteCond %{QUERY_STRING} ^(.*)$ [NC]
RewriteRule ^/page\.php$ - [R=404,L]

我得到RewriteCond: unknown flag 'AND'
还有别的办法吗

rsaldnfx

rsaldnfx1#

AND不是必需的(也不是有效的标志),因为条件会自动进行“与”运算。
只需用途:

RewriteCond %{HTTP_HOST} !^subdomain\.domain\.com$ [NC]

此外,RewriteCond %{QUERY_STRING} ^(.*)$ [NC]实际上没有做任何事情,它将QUERY_STRING与任何东西(包括空字符串)匹配。
你的最终规则应该是这样的:

RewriteCond %{HTTP_HOST} !^subdomain\.domain\.com$ [NC]
RewriteRule ^/?page\.php$ - [R=404,NC,L]

相关问题