Apache 如何使用.htaccess将非www页面重定向到www页面(单个子文件夹除外)
我正在尝试将指向我的站点的所有非www.url重定向到www.url-但是,我的站点上有一个子文件夹我不想更改。我一直在使用的代码是:Apache 如何使用.htaccess将非www页面重定向到www页面(单个子文件夹除外),apache,.htaccess,redirect,Apache,.htaccess,Redirect,我正在尝试将指向我的站点的所有非www.url重定向到www.url-但是,我的站点上有一个子文件夹我不想更改。我一直在使用的代码是: Options +FollowSymlinks RewriteEngine on rewritecond %{http_host} ^domain.com [nc] rewriterule ^(.*)$ http://www.domain.com/$1 [r=301,nc] 有没有办法告诉这段代码忽略domain.com/specialsubfolder 非常
Options +FollowSymlinks
RewriteEngine on
rewritecond %{http_host} ^domain.com [nc]
rewriterule ^(.*)$ http://www.domain.com/$1 [r=301,nc]
有没有办法告诉这段代码忽略domain.com/specialsubfolder
非常感谢,已尝试搜索此项,但无法完全找到我要查找的内容。常见的方法(易于阅读和理解)是,如果URL以/specialsubfolder
开头,则添加另一个条件以忽略此规则:
Options +FollowSymlinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain\.com [NC]
RewriteCond %{REQUEST_URI} !^/specialsubfolder
RewriteRule .* http://www.domain.com%{REQUEST_URI} [R=301,L]
或者,将此类条件添加到匹配模式中(更难读取,但速度稍快):
p.S.如果需要区分大小写,您可以添加
[NC]
标志。非常感谢-这个答案非常完美。
Options +FollowSymlinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain\.com [NC]
RewriteRule ^(?!specialsubfolder).* http://www.domain.com%{REQUEST_URI} [R=301,L]