하지

2012-05-28 5 views
0
나는 다음과 같은 modrewrite 스크립트를 가지고

:하지

RewriteCond %{ENV:space_replacer} !^$ 
RewriteRule ^.*$ %{ENV:space_replacer} 
RewriteRule (.*)/(.*)$ product.php?categorie_url=$1&product_url=$2 

THIS ONE ABOVE IS WORKING: -> domain.com/korsetten/school-girl 


RewriteCond %{ENV:space_replacer} !^$ 
RewriteRule ^.*$ %{ENV:space_replacer} 
RewriteRule (.*)$ categorie.php?categorie_url=$1 

THIS ONE ABOVE IS NOT WORKING: -> domain.com/korsetten 

전체 htaccess로 파일 :

RewriteEngine on 

RewriteCond %{ENV:space_replacer} !^$ 
RewriteRule ^.*$ %{ENV:space_replacer} 
RewriteRule (.*)/(.*)$ product.php?categorie_url=$1&product_url=$2 

RewriteCond %{ENV:space_replacer} !^$ 
RewriteRule ^.*$ %{ENV:space_replacer} 
RewriteRule (.*)$ categorie.php?categorie_url=$1 

누군가가 내가 잘못 뭐하는 거지 나를 설명 할 수 카테고리 페이지?

답변

0

왜 제 2자가 당신을 위해 작동하지 않는지 잘 모르겠습니다. 아파치 설정을 테스트 할 때 문제가있었습니다. 그러나 나를 위해 다음과 같은 작품 :

RewriteCond %{ENV:space_replacer} !^$ 
RewriteRule ^.*$ %{ENV:space_replacer} 
RewriteRule ^([^/]+)/([^/]+)$ product.php?categorie_url=$1&product_url=$2 [L] 

RewriteCond %{ENV:space_replacer} !^$ 
RewriteRule ^.*$ %{ENV:space_replacer} 
RewriteRule ^([^/]+)/?$ categorie.php?categorie_url=$1 [L] 

그냥 정규식을 쥐게하고 [L] 플래그를 추가했다.

0

귀하의 답변을 주셔서 감사합니다,하지만 나를 위해 일하지 않았다,이 코드는 다음 나를 위해 일한 :

RewriteCond %{REQUEST_URI} ^(.*)\ (.*)$ 
RewriteRule ^.*$ %1-%2 [E=space_replacer:%1-%2] 
RewriteCond %{ENV:space_replacer} !^$ 
RewriteCond %{ENV:space_replacer} !^.*\ .*$ 

RewriteRule ^.*$ %{ENV:space_replacer} [R=301,L] 
RewriteRule (.*)$ categorie.php?categorie_url=$1&%{QUERY_STRING} 
RewriteRule (.*)/(.*)$ products.php?categorie_url=$1&product_url=$2&%{QUERY_STRING} 

은 이제 $ _GET 방법은 또한 categorie.php 페이지에 대한 작동합니다. 이제 $ _GET [ 'categorie_url']을 사용하여 데이터베이스의 현재 범주 양식을 검색 할 수 있습니다.