我如何编辑我的htaccess文件让我的网站只使用“www”

时间:2012-07-11 22:16:33

标签: php .htaccess mod-rewrite

我的.htaccess文件代码是

DirectoryIndex router.php
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 ^(.*)$
RewriteRule ^(.*)$ router.php?_doroute=$1 [L,QSA]

我想让我的网站只使用“www”

我无法将此代码与其集成

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

有人可以帮我吗?

2 个答案:

答案 0 :(得分:1)

.htaccess文件的完整输出是什么?您正在显示RewriteRule ^(.*)$ router.php?_doroute=$1 [L,QSA]规则,表示该规则末尾的停止处理,[L]。

如果您只是添加:

RewriteCond %{HTTP_HOST} !^www\.  
RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]   
那么那将是你的问题。

另一种方法是:

RewriteCond %{HTTP_HOST} ^example.com$
RewriteRule (.*) http://www.example.com$1 [R=301]

答案 1 :(得分:0)

只需将以下内容添加到.htaccess

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

来源: LetUsLook.nl - Redirect non-www to www