2011-04-19 10 views
1

아파치에서 영구 URL을 구현하려고하는데 RewriteMap에서 다시 전달 된 URL이 숨겨진 상태로 유지되는 데 문제가 있습니다. 그것이를 위해Apache Rewrite URL을 숨기고 숨기기

http://www.mysite.com/psearch?purl=12345

및 매핑 된 값 :

http://www.mysite.com/search?name=test&type=test2

은 내가 PURL 브라우저의 주소 표시 줄에 표시되는 URL가되고 싶어요 나는 PURL이있는 경우 즉,이다. 불행히도, PURL이 매핑되는 사이트를 계속 표시합니다.

RewriteCond %{REQUEST_URI} /psearch(/)*$ 
RewriteMap mapper prg:/scripts/rewritetest.pl 
RewriteRule ^/(.*)$ ${mapper:$1} [L] 

모든 매퍼 지금 내가 주소 숨기는 작업을 얻으려고하기 때문에, 시스템에서 테스트 페이지의 URL을 반환 할 것입니다 않습니다 내 규칙은 다음과 같다. 그리고 지금 당장 매개 변수를 얻지 못한다는 것을 알고 있습니다. 단지 psearch 키 작업을 사용하여 테스트를 실행하려고하고 있으며 나중에 주소를 숨길 수 있다면 나머지 부분을 추가 할 것입니다.

감사합니다. 감사합니다.

+0

질문에 RewriteLog 출력의 관련 부분을 포함해야합니다. RewriteLogLevel을 5로 설정하십시오. – noodl

+0

RewriteRule^(. *) $ $ {mapper : $ 1} [L] $$ {mapper : $ 1} ' –

답변

1

전체 리디렉션을 강제 한 전체 URL을 반환한다는 것이 문제였습니다. REQUEST_URI 부분 만 전달하면 문제가 해결되었습니다.

헤더가 만료되도록하는 것도 도움이되었습니다. 무엇인가가 제대로 작동하면 어둡게 보였던 것이 캐싱되기 때문입니다.

관련 문제