2017-05-09 190 views
1

我需要将我的symfony网站从“abc.com”重定向到“www.abc.com”。我尝试了一些堆栈溢出解决方案,但他们添加了多个“www”。地址和其他人没有工作。Symfony2 - 从非www到www的重定向

这是我的htaccess源代码。

DirectoryIndex app.php 

<IfModule mod_negotiation.c> 
    Options -MultiViews 
</IfModule> 

<IfModule mod_rewrite.c> 
    RewriteEngine On 

    RewriteCond %{REQUEST_URI}::$1 ^(/.+)/(.*)::\2$ 
    RewriteRule ^(.*) - [E=BASE:%1] 

    RewriteCond %{HTTP:Authorization} . 
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] 

    RewriteCond %{ENV:REDIRECT_STATUS} ^$ 
    RewriteRule ^app\.php(/(.*)|$) %{ENV:BASE}/$2 [R=301,L] 

    RewriteCond %{REQUEST_FILENAME} -f 
    RewriteRule .? - [L] 

    RewriteRule .? %{ENV:BASE}/app.php [L] 
</IfModule> 

<IfModule !mod_rewrite.c> 
    <IfModule mod_alias.c> 
     RedirectMatch 302 ^/$ /app.php/ 
    </IfModule> 
</IfModule> 

我该怎么做?

+0

[htcaccess和symfony的2重定向非WWW - > WWW]的可能的复制(https://stackoverflow.com/questions/27398989/htcaccess-and -symfony-2-redirect-non-www-www) – Trix

回答

7

添加以下规则作为第一规则:

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

谢谢你的工作。 – TechyTee