Apache .htaccess重写条件[或]

Apache .htaccess重写条件[或],apache,.htaccess,Apache,.htaccess,我想如果我在cookie上设置了user\u id或customer\u id,它就会通过。但这不起作用。删除not,即删除-如果我删除“!”符号,它将重定向到404。如果不是isset,它应该是404。这不是你在随附文本中所说的。但我想说的是,你们想要的是显示404是未设置用户id和未设置客户id。如果是这样,您只需要删除[OR],使其成为and。如果设置了用户id或客户id,则它将通过isset user id或客户id,它不得应用404规则。因此,要应用404规则,您需要条件:NOT(is

我想如果我在cookie上设置了user\u id或customer\u id,它就会通过。但这不起作用。

删除not,即删除
-如果我删除“!”符号,它将重定向到404。如果不是isset,它应该是404。这不是你在随附文本中所说的。但我想说的是,你们想要的是显示404是未设置用户id和未设置客户id。如果是这样,您只需要删除[OR],使其成为and。如果设置了用户id或客户id,则它将通过isset user id或客户id
,它不得应用404规则。因此,要应用404规则,您需要条件:
NOT(isset user\u id或customer\u id)
,它可以转换为
NOT(isset user\u id)和NOT(customer\u id)
RewriteEngine On
RewriteCond %{REQUEST_URI} ./ext/.*
RewriteCond %{HTTP_COOKIE} !^user_id=.*$ [OR]
RewriteCond %{HTTP_COOKIE} !^customer_id=.*$
RewriteRule ^(.*)$ http://%{HTTP_HOST}/404.php