2013-04-07 3 views
0

나는 레일 애플 리케이션을 가지고 있고 앱의 공용 폴더에 .htaccess 파일에이 코드를 넣어 가지고 : 여전히www가 아닌 ​​요청을 www로 리디렉션하는 방법은 무엇입니까?

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

하지만 www가 아닌 ​​www가 리디렉션되지 않고 크롬 말하고있다 : 무한 고리. 내가 도대체 ​​뭘 잘못하고있는 겁니까? Passenger와 함께 Apache를 사용하고 있습니다.

답변

2

RewriteCond %{HTTP_HOST} ^example\.com [NC] 
처럼 읽고, RewriteCond에서 괄호와 ?를 제거해야
5

대신 rack-canonical-host 보석을 사용하고 싶습니다.

단지 라인이 run으로 시작하기 전에, bundle를 실행하십시오 Gemfilegem 'rack-canonical-host'를 추가하고 config.ru이 추가 :

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

:

use Rack::CanonicalHost, 'example.com' 
2

당신은 이러한 재 작성 조건 및 규칙을 시도 할 수 있습니다 사실, 귀하의 상태 표현은 다음과 같습니다 :

,210
관련 문제