.htaccess使用当前的htaccess代码重定向到WWW?

时间:2012-12-10 00:48:37

标签: apache .htaccess url-rewriting

我想将我的网址重定向到www版本。我可以这样做,但我已经有了.htaccess代码,它将浏览器重定向到处理URL的index.php文件。我有这个代码(我没写过),而且我对htaccess没有足够的了解来解决问题:

RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^(.*)$  /index.php [NC]

我尝试在重定向中使用完整的URL路径,但是当我尝试访问页面时会产生404错误。我还尝试在此代码下面简单地包含更多规则,但没有成功。

1 个答案:

答案 0 :(得分:1)

您的意思是希望http://example.com/foo/bar重定向到http://www.example.com/foo/bar吗?

如果是这样,这应该可以解决问题,同时保留你的意图

RewriteEngine On

# First redirect non-www hosts (the "L" flag means we won't process
# any more rewrite conditions in this redirect; on the next request,
# the rewrite condition won't match and we'll fall through to your 
# original rule)
RewriteCond %{HTTP_HOST} !^www\.(.*) [NC]
RewriteRule ^(.*)$ http://www.yourdomain.com/$1 [R=301,NC,L]  

# Handle normal requests
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^(.*)$  /index.php [NC]: