2013-05-03 4 views
0

나는htaccess로 재 작성 동적 URL

RewriteEngine on 
RewriteRule index.php?test=(\w+)?$ $1 

노력했다.

어떻게이 작업을 수행 할 수 있습니까? 그리고 예를 들어 echo $_GET['test']을 다시 작성한 URL (또는 검색어와 관련된 모든 항목)을 사용하여 여전히 수행 할 수 있습니까?

+1

"이름 바꾸기"라는 개념은이 문맥에서 의미가 없습니다. Mod_rewrite는 URL을 리소스의 위치로 결정하는 클라이언트 (브라우저)와 리소스 요청을 받아 실제 리소스에 매핑하는 서버의 중간에 있습니다. 이 두 가지가 다릅니다. Mod_rewrite는 서버가 자원에 맵핑을 시도하기 전에 클라이언트가 요청하고 처리 한 것을 취할 수 있습니다. 너 뭐하려고? –

+0

index.php를 제거하려고합니까? test = – Sidetik

답변

1

브라우저에서 들어오는 URL을 동적 일 경우 :

http://www.example.com/<some dynamic data> 

당신은 당신의 코드에 대해,이로 재 작성하려는 :

:

http://www.example.com/index.php?test=<some dynamic data> 

다음이 시도

RewriteEngine on 
RewriteCond %{REQUEST_URI} !index.php 
RewriteRule ^(.*)$ index.php?test=$1 [NC,L] 

마지막 줄에는 들어오는 내용이 모두 들어가서 test 매개 변수로 index.php로 전송됩니다. RewriteCond는 index.php 자체로이 작업을 수행하지 않도록하거나 무한 루프가되도록합니다.

다른 방법을 시도하고 코드가 사이트에 표시하기위한 동적 URL을 만들면 html을 만들 때마다 웹 사이트 코드의 다른 위치에있는 것입니다. 일단 생성되면,이 규칙은 다시 index.php로 다시 작성합니다.