2017-11-17 1 views
9

non-www을 내 웹 사이트의 www으로 리디렉션하려고합니다. 내 SSL은 모두 httphttps으로 리디렉션하도록 이미 구성되어 있지만 내가 발견 한 모든 부분은 나를 위해 부분적으로 만 작동합니다! 내가 mysite.com/en/articles/12/how-to-code 입력하면301 www가 아닌 ​​www로 리디렉션

는, 예를 들어 나는이 질문이 가능한 반복 알고 있지만, 다른 솔루션은 나를 위해 일하지 않은, 나는이 SO question에 대한 해결책을 시도

www.mysite.com/en/articles/12/how-to-code을 했어야 www.mysite.com/index.php로 리디렉션하고 ! apache2를 사용하고 있습니다.

은/공용 폴더에있는이 내 htaccess로

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

    RewriteEngine On 

    # Redirect Trailing Slashes If Not A Folder... 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)/$ /$1 [L,R=301] 

    # Handle Front Controller... 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule^index.php [L] 

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

    # Redirect to www 
    RewriteCond %{HTTP_HOST} ^[^.]+\.[^.]+$ 
    RewriteCond %{HTTPS}s ^on(s)| 
    RewriteRule^http%1://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 
</IfModule> 

사전

답변

6

변경하기 위해 감사 및 재 작성하기 전에 재 :

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

    RewriteEngine On 

    # Redirect Trailing Slashes If Not A Folder... 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)/$ /$1 [L,R=301] 

    # Redirect to www 
    RewriteCond %{HTTP_HOST} ^[^.]+\.[^.]+$ 
    RewriteCond %{HTTPS}s ^on(s)| 
    RewriteRule^http%1://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 

    # Handle Front Controller... 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule^index.php [L] 

    # Handle Authorization Header 
    RewriteCond %{HTTP:Authorization} . 
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] 
</IfModule> 

를 당신이 재 작성 후 리디렉션 경우 때문에 URL, 리디렉션 요청에 대해 수정되고 반환되는 마지막 버전입니다.

+1

감사합니다. 방금 50 점이 더 있습니다! 이제는 왜이 순서로 작동하는지 설명 할 수 있습니까?하지만 다른 위치에서는 작동하지 않습니다. 어쩌면 답을 갱신하는 것과 같습니다. –

+0

누군가 질문에 대한 도움을 받으실 수 있습니까? https://stackoverflow.com/questions/47475677/redirect-to-a-new-domain-using-apache-vhost-configuration –

관련 문제