2011-11-10 3 views

답변

6

이 정규식은 후행 슬래시를 제거 할 것이라고 생각합니다. 당신이 필요하지 않을 수도 있습니다? 괄호 안에

편집 : www.example.com로 리디렉션 및 서버 모두 여기에

server { 
    server_name example.com; 
    rewrite ^(.+?)/?$ http://www.example.com$1 permanent; 
} 

server { 
    server_name www.example.com; 

    rewrite ^(.+)/$ http://www.example.com$1 permanent; 

    ... handle everything that doesn't end in a/... 
} 
+0

내가 시도 것입니다하지만 나에게 (404)를 제공하고 지금도 내 레일 응용 프로그램을 공격하지 않습니다에 슬래쉬 제거. 서버 { server_name example.com; ^/(. +)/$ http://www.example.com/$1 영구 수정; } 서버 { server_name * .example.com; ^/(. +)/$/$ 1 영구 수정; } – bokor

+0

아, 이렇게 생각하지 않았습니다. 나는 force-www 리다이렉트에서부터 /를 제거하고 있었다. 내 대답을 업데이트 할게. – kolbyjack

+0

이상한 일은 실제로 이것이 적절한 URL을 만드는 것으로 보입니다.하지만 Engine Yard를 사용하고 있으며 나는 알아낼 수없는 404를 얻고 있습니다. 저의 server_names가 example.com * .example.com – bokor

관련 문제