2011-01-29 2 views
0

show.php라는 동적 페이지가 있습니다. 페이지는 동적이며 URL은 show.php?name=john-doe 또는 show.php?category=student 일 수 있습니다.2 동적 페이지 1 개에 대한 URL 재 작성 규칙

URL을 /show/john-doe.html 또는 카테고리를 /show/student.html으로 바꾸는 재 작성 규칙을 만들려고합니다.

이것은 내 .htaccess에있는 것입니다.

RewriteRule ^show/([^/]*)\.html$ show.php?name=$1 [L] 
RewriteRule ^show/([^/]*)\.html$ show.php?category=$1 [L] 

현재 이름 규칙 만 작동하지만 카테고리 규칙은 작동하지 않습니다. 뭐가 문제 야?

+0

- 경우 이름에 하이픈이 있는데 이름이 맞습니까? –

답변

0

문제는 모든 show/xxx.html을 동일한 URL (첫 번째 URL)로 보내는 것입니다. 두 다시 쓰기 규칙 모두 정확히 동일한 매개 변수를 사용하기 때문에 첫 번째 매개 변수 만 작동합니다.

두 가지 방법으로 해결할 수 있습니다.

show.php? id = xxx를 사용하고 PHP에서 이름과 카테고리를 모두 사용하고 표시 할 페이지를 결정하십시오.

또는 당신과 같이 표시/카테고리/student.html 및 표시/학생/존 - doe.html를 얻을 수 있도록 재 작성에 URL을 서로 다른 두 가지 유형을 사용 :

정확한 규칙이 무엇
RewriteRule ^show/student/([^/]*)\.html$ show.php?name=$1 [L] 
RewriteRule ^show/category/([^/]*)\.html$ show.php?category=$1 [L] 
+0

9muses 감사합니다. :) –