2013-05-16 4 views
0

가 나는 URL을 가지고 htaccess로 재 작성 에 몇 시간을 잃어버린 :다시 쓰기 규칙 htaaccess

http://xxx.yyy.zzz.net/html/login.php?sub=string 

을 그리고이

http://string.yyy.zzz.net/html/login.php 
+0

시도해 보셨습니까? –

+0

예, RewriteCond % {HTTP_HOST}^(www \.)? xxx \ .yyy \ .polczzzode \ .net \ login.php? sub = $ 1 RewriteRule^(. *) $ http : //$1.xxx.yyy .zzz.net \ html [L] – user2213609

답변

1

이 방식으로 변경하려는 하나로 제한됩니다 매개 변수 이름 :

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^(www\.)?xxx\.yyy\.zzz\.net 
RewriteCond %{QUERY_STRING} ^sub=(.*)$ 
RewriteRule ^html/(.*)$ http://%1.xxx.yyy.zzz.net/$1? [L] <--note the use of %1 

문제는 여기에 유추 : http://wiki.apache.org/httpd/RewriteQueryString) : mod_rewrite은 쿼리 매개 변수에 직접 액세스하고 조작 할 수 없으므로 가능성이 매우 낮습니다. 리디렉션을 관리하는 매개 변수가 하나뿐이면 잘 처리 할 수 ​​있습니다.

(참고 : 대상에 전달할 다른 쿼리 매개 변수가있는 경우 마지막 물음표를 사용하지 마십시오. 나머지 쿼리 문자열이 효과적으로 제거됩니다. 또한 두 번째 다시 쓰기 조건을 다시 작성해야했습니다. 매개 변수로 끝남)