2017-12-20 12 views
0

예 : 다음은 URL이 여기에 id의 값이 정수가 될 수

http://example.com/discussion/temp/?id=123

을 리디렉션하는 것입니다. 또한 도메인에 discussion & temp과 같은 경로/폴더가 없다는 점에 유의하십시오 (그러나 몇 가지 이유로 다른 업데이트를 만들 때까지이 URL 구조 만 사용해야합니다). 나는 다음과 같은 URL에 위에서 언급 한 URL 리디렉션 할 - 내가 그것을 사용할 수 없습니다 오전

RewriteEngine on 
RewriteCond %{QUERY_STRING} id=1 
RewriteRule ^sub-dir/index\.php$ /path-to-new-location/? [L,R=301] 

-하지만 비슷한 질문에서 발견 된 몇 가지 답변에서

http://example.com/new_folder/edit.php?id=123

을 나는 발견 내 경우에는 id 번호를 실제로 리디렉션하는 방법을 알 수 없습니까?

Redirect 301 /old-path/to-old-url /new-path/to-new-url

답변

0

당신은 RewriteCond directive, 한다 RewriteCond의 역 참조 찾아야한다 -

는 (동적 id 포함)을 달성 할 수있는 다음과 같은 것입니다. 쿼리 문자열이 id={numeric characters}이있는 경우

RewriteEngine on 
RewriteBase/
RewriteCond %{QUERY_STRING} id=([0-9]+) 
RewriteRule ^discussion/temp/$ /new_folder/edit.php?id=%1 [L,R=301] 

그것은 테스트하고 그 다음 영구적으로 /new_folder/edit.php?id={numeric characters}로 리디렉션 않을 경우 요청 URI는, discussion/temp/입니다.