2010-03-14 4 views
-1

나는 ROR 응용 프로그램을 배포하고 있는데 지금은의 끝에/ 더블 슬래시 아파치 구성

  • 추가 URL에 접두사 www가 추가

    • 에 (아파치)에 URL을 다시 작성해야

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

      문제는이 두 후행를 추가된다는 점이다 :

    URL

  • 그래서 나는 다음과 같은 접근 방식을했다

    RewriteCond %{REQUEST_URI} ^// 
    RewriteRule ([^/]*)/+(.*) http://www.foo.com/$1/$2 [R=301,L] 
    
    : 내 모든 재 작성 규칙이 이중 //를 제거하려고하기 전에 다음 규칙을 추가하려고

    http://foo.com//question/ask 
    

    : 그래서 예를 들어 자원/문제가되고있다 물어/내 URL을 에 슬래시

    그러나 didnt 한 일 .. 어떤 아이디어는 모든 엑스트라 "//"URL에 추가를 벗어 버리고?

    답변

    6

    $1은 처음에 / 포함됩니다. 당신은 아마

    RewriteCond %{REQUEST_URI} ^/[^\.]+[^/]$ 
    RewriteRule ^(.*)$ http://%{HTTP_HOST}$1/ [R=301,L] 
    RewriteCond %{HTTP_HOST} ^foo\.com 
    RewriteRule ^(.*)$ http://www.foo.com$1 [R=301,L] 
    
    을 원하는