2013-07-03 3 views
0

문제 재 작성 규칙이 있습니다. 누군가 나를 도와주세요. 내 htaccess로 코드동일한 매개 변수가있는 여러 페이지가있는 htaccess

RewriteEngine On 

RewriteCond %{REQUEST_URI} (.*)/(.*)/(.*)/(.*)/(.*)/(.*)/ 
RewriteRule (.*)/(.*)/(.*)/(.*)/(.*)/(.*)/ /sandbox/all_deals.php?city_id=$1&city_name=$2&cat_id=$3&cat_name=$4&deal_shop_id=$5&deal_shop_name=$6 [L] 

RewriteCond %{REQUEST_URI} (.*)/(.*)/(.*)/(.*)/ 
RewriteRule (.*)/(.*)/(.*)/(.*)/ /sandbox/all_deals.php?city_id=$1&city_name=$2&cat_id=$3&cat_name=$4 

RewriteCond %{REQUEST_URI} (.*)/(.*)/ 
RewriteRule (.*)/(.*)/ /sandbox/all_deals.php?city_id=$1&city_name=$2 

RewriteCond %{REQUEST_URI} (.*)/(.*)/(.*)/(.*)/(.*)/ 
RewriteRule (.*)/(.*)/(.*)/(.*)/(.*)/ /sandbox/index.php?p=deals&city_name=$1&shop_name=$2&cat_name=$3&dealname=$4&id=$5 

내가 파일 이름 all_deals.php와의 index.php에서 마지막에 형식 내 코딩 처음 3 점에서

1) www.domain.com/sandbox/city-name/shop-name/cat-name/ 
2) www.domain.com/sandbox/city-name/shop-name/ 
3) www.domain.com/sandbox/city-name/ 
4) www.domain.com/sandbox/city-name/shop-name/cat-name/deal_name/ 

를 다음과 같이 보여주고 싶어한다. htaccess를 사용하면 코드 충돌로 인해 all_deals.php 파일로 항상 리디렉션됩니다.

어떻게 이러한 문제를 해결할 수 있습니까? 도와주세요. 미리 감사드립니다.

답변

0

귀하의. *은 욕심이고 /은 욕심 많은 정규 표현식과 일치합니다. 대신 lazy regexp를 사용해야합니다. 모든 정규식 끝 부분에 ?을 추가해야합니다.

(.*?)/(.*?)/(.*?)/(.*?)/(.*?)/(.*?)/ 
관련 문제