2012-08-24 2 views
-1

웹 요청을 example.org에서 www.example.org으로 리디렉션하고 싶습니다. 나는 올바른 규칙이 있다고 생각하지만, 슬래시 두 개의 여분의 기대를 추가 :두 개의 여분의 슬래시를 추가하는 RewriteRule 수정

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^example\.org [NC] 
RewriteRule ^(.*)$ http://www.example.org/$1 [R=permanent,L] 

위의 그 후행 슬래시를 제거 할 수있는 방법이 있나요 www.example.org//

example.org에서 나를 걸릴까요? 나는 슬래시를 없애고 리다이렉트 루프를 일으키는 다음 변형을 시도했다.

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^example\.org [NC] 
RewriteRule ^(.*)$ http://www.example.org/$1 [R=permanent,L] 
RewriteRule ^(.*)/$ /$1 [L,R=301] 

어떻게 해결할 수 있습니까?

+0

'/'에서'/'로 리다이렉션을 추가하고 싶지 않을 때, 사이트에 대한 모든 접근 속도가 느려지고 잠재적으로 SEO가 엉망이됩니다. 실제 문제를 수정하십시오 (처음에는'//'URL 생성). –

답변

1

RewriteEngine on 바로 뒤에 RewriteBase /을 추가하십시오.

그렇지 않은 경우 규칙을 RewriteRule ^/(.*)$ http://www.example.org/$1 [R=301,L]으로 변경하여 초기 /을 캡처하지 마십시오.

+0

첫 번째 해결 방법으로'RewriteBase : 디렉토리 별 설정 파일에서만 유효 '오류가 발생하지만 두 번째 해결 방법은 Chrome, Safari 및 Firefox (캐시 삭제 후)에서 제대로 작동하는 것으로 보입니다. 감사! –

관련 문제