在保存子文件夹的同时http到www?

时间:2015-12-09 14:56:35

标签: apache .htaccess mod-rewrite httpd.conf

我在.htaccess中有以下规则从domain.tld重定向到www.domain.tld,它运行正常。

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

但是,在尝试访问domain.tld / forum时,我被重定向到www.domain.tld

如何在保留访问者所在的子文件夹的同时将所有非www重定向到www?

1 个答案:

答案 0 :(得分:2)

使用REQUEST_URI变量:

RewriteEngine On

RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

%{REQUEST_URI}将拥有完整的请求URI,而不是$1

中捕获的相对路径(来自当前目录)