2011-04-14 9 views
0

내 .htaccess 파일에서 재 작성 엔진을 사용하는 코드가 있는데 내 SERP의 디렉토리를 지정합니다. 그러나 누군가 검색/QUERY/QUERY/PAGE /를 검색하는 대신 404 오류가 표시됩니다. 검색 /와 동일합니다. 누군가가 그냥 리디렉션 것을// QUERY를 검색 할 간다면 그들을/QUERY/1을 검색 할 수 있도록.htaccess 리디렉션 재 작성

내가 원하는/그냥 검색/내 홈페이지 /로 리디렉션. 나는 아래 코드를 포함시켰다.

RewriteEngine on 
RewriteRule ^search/([^/]+)/([^/]+)/?$ search.php?q=$1&category=web&d=$2 

누구든지이 문제를 해결할 수 있습니까? 사전에

감사합니다, 캘럼

답변

0

당신의 htaccess로이 코드를 사용해보십시오 :

RewriteEngine on 
RewriteRule ^search/?$/[R=301,L] 
RewriteRule ^search/([^/]+)/?$ /search/$1/1/ [R=301,L] 
RewriteRule ^search/([^/]+)/([0-9]+)/?$ search.php?q=$1&category=web&d=$2 [NC,L] 
0

당신은 이러한 목표를 달성하기 위해 여러 RewriteRule 문을 만들 수 있습니다.

만이 형태 /search/query/n/의인지 다시 작성합니다 게시 규칙을 (! 당신이 그것을 사용하는 경우 중간 규칙에 [R] 플래그를 생략해야합니다), 그래서 /search/query/1로 리디렉션 search/query 일치하는 정규 표현식을 작성합니다. 동일한 작업을 수행하여 쿼리가없는 집으로 리디렉션합니다.

0

당신의 .htaccess 파일에 이러한 추가 2 개 규칙을 시도해보십시오

RewriteRule ^search/([^/]+)/$ /search/$1/1/ [R=301,L] 
RewriteRule ^search/?$/[R=301,L]