2014-12-13 2 views
1

내 재 작성 규칙은 그것은htaccess로 재 작성 규칙은 HTTP 작동하지 : //

http://example.com/site/google.com 

을 위해 잘 작동하지만 작동하지 않습니다

RewriteRule ^site/([^/]+)$ page.php?site=$1 [L] 

내가 HTTP를 추가 할 때 : // 또는 https : // (예 : google.com 이전)

http://example.com/site/http://google.com 

http://example.com/site/https://google.com 

/사이트/ http://example.com/site/here_it_may_be_any 같은 그 후의 모든 사항을 수용 할 수있는 재 작성 규칙을 공유하십시오.

답변

1

형식 문자열을 RewriteCond에서 캡처해야합니다. 그렇지 않으면 Apache는 RewriteRule 패턴에서 여러 개의 슬래시를 하나씩 제거합니다. 이 규칙을 사용하십시오 :

RewriteCond %{REQUEST_URI} /site/(.+)$ [NC] 
RewriteRule^page.php?site=%1 [L,QSA] 
+0

작동하지 않습니다. 방금 시험 했어. – Rinku

+0

localhost에서이 작업을 수행하고 있습니다. 내 링크는 project /site/http://google.com**의 ** 디렉토리이며 404 오류가 발생합니다. stackoverflow에 문제가 있습니다. – Rinku

+0

이 htaccess는 어디에 있으며 'page.php'는 어디에 있습니까? – anubhava