我想添加" www。"如果网址不包含" www。"之后" http://&#34 ;;但如果从某些特定文件夹请求任何文件,则不应添加。
这是我尝试过的。
RewriteEngine On
RewriteCond %{PATH_INFO} ^/exception_dir(.)*$
RewriteRule ^(.*)$ - [L]
RewriteCond %{HTTP_HOST} ^[^.]+\.[^.]+$
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [L,R=301]
使用此代码,目前," exception_dir"不被豁免重定向。我缺少什么?
如果要豁免多个目录,如何编写RewriteCond和/或RewriteRule?我是否需要分别为每个目录编写RewriteCond和RewriteRule?
答案 0 :(得分:1)
你可以像这样做你的规则。在这个例子中,我也排除了2个目录。您可以执行1个或多个目录。
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{REQUEST_URI} !^/exception_dir1 [NC]
RewriteCond %{REQUEST_URI} !^/exception_dir2 [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [L,R=301]