正则表达式 HTAccess 不工作
Regex HTAccess Not functioning
所以我的 .htaccess 文件中有这条规则。它正确地停止了对 "files" 目录的重写,但停止了对其他目录的 none 的重写。我希望这不会重定向文件、pdf、img 和帐户目录。
RewriteCond %{REQUEST_URI} !^/(files|pdf|img|account).*$ [NC]
我也试过
RewriteCond %{REQUEST_URI} ^/[^(files|pdf|img|account)].*$ [NC]
这会停止重定向所有请求的目录,也会停止重定向移动站点,所以我认为这会破坏我的整个规则集。
我的规则集有点长,所以要从我们的主站点重定向到移动设备 m.mainsite。如果看到整套有用,请告诉我。
谢谢。
尝试使用 THE_REQUEST
变量代替 REQUEST_URI
变量,因为 THE_REQUEST
变量表示 Apache 从您的浏览器收到的原始请求,并且在执行某些重写规则后它不会被覆盖。
RewriteCond %{THE_REQUEST} !/(files|pdf|img|account) [NC]
您可以使用这两个条件语句,而不仅仅是一个。一个用于目录,然后一个用于目录中的任何内容,例如文件或另一个目录。
RewriteCond %{REQUEST_URI} !^/(files|pdf|img|account)/?$ [NC]
RewriteCond %{REQUEST_URI} !^/(files|pdf|img|account)/(.*)$ [NC]
所以我的 .htaccess 文件中有这条规则。它正确地停止了对 "files" 目录的重写,但停止了对其他目录的 none 的重写。我希望这不会重定向文件、pdf、img 和帐户目录。
RewriteCond %{REQUEST_URI} !^/(files|pdf|img|account).*$ [NC]
我也试过
RewriteCond %{REQUEST_URI} ^/[^(files|pdf|img|account)].*$ [NC]
这会停止重定向所有请求的目录,也会停止重定向移动站点,所以我认为这会破坏我的整个规则集。
我的规则集有点长,所以要从我们的主站点重定向到移动设备 m.mainsite。如果看到整套有用,请告诉我。
谢谢。
尝试使用 THE_REQUEST
变量代替 REQUEST_URI
变量,因为 THE_REQUEST
变量表示 Apache 从您的浏览器收到的原始请求,并且在执行某些重写规则后它不会被覆盖。
RewriteCond %{THE_REQUEST} !/(files|pdf|img|account) [NC]
您可以使用这两个条件语句,而不仅仅是一个。一个用于目录,然后一个用于目录中的任何内容,例如文件或另一个目录。
RewriteCond %{REQUEST_URI} !^/(files|pdf|img|account)/?$ [NC]
RewriteCond %{REQUEST_URI} !^/(files|pdf|img|account)/(.*)$ [NC]