2012-11-14 4 views
1

나는 다음의 .htaccess 파일이 있습니다mod_rewrite를 301 같은 htaccess로의 재

RewriteEngine on 
Options +FollowSymLinks 

RewriteCond %{SCRIPT_FILENAME} !-d 
RewriteCond %{SCRIPT_FILENAME} !-f 

RewriteRule (.*)$ ./page.php?name=$1 

나는 또한 약 20 개의 다른 정적 addressess 나는 301 리디렉션을하고 싶지해야합니다. 나는 모든 방법을 시도하고 실패

Redirect 301 http://www.example.com/category.php?id=3 http://www.example.com/books 
Redirect 301 http://www.example.com/articles.php?id=124 http://www.example.com/birds 

: 같은

이 보일 것이다.

누군가 나를 도울 수 있습니까?

+1

어떻게 실패합니까? –

+1

어떻게해야합니까? 무슨 일 이니? 무슨 일 이니? – Jrod

+0

'phpinfo()'에서'mod_rewrite'를 빠르게 검색하면'mod_rewrite' 모듈이로드되었는지를 알 수 있습니다. 표시되지 않으면 서버 회사에 추가하도록 요청해야합니다. –

답변

1

나는 이러한 경우 당신은 대신 당신이 내부 리디렉션 또는 별칭이 원하는 브라우저 리디렉션을 원하지 않는, 당신의 리디렉션 예에서 사람들을 위해 SEO 친화적 인 URL의의 집합 후 같은데요 예

RewriteRule ^/?books /category.php?id=3 [L] 
RewriteRule ^/?birds /articles.php?id=124 [L] 

당신이 많은 규칙이 있고 재 작성 맵 파일과 규칙을 고려할 수 있습니다을 httpd.conf에 액세스 할 수있는 경우.

아래의 의견에 따라 사용자/크롤러를 새로운 URL 구조로 변경하려면 파일에 추가 재 작성 규칙 세트가 필요합니다 (리디렉션되지 않음).

RewriteCond %{THE_REQUEST}  /category\.php  [NC] 
RewriteCond %{QUERY_STRING}  ^id=3 [NC] 
RewriteRule ^.*     http://%{HTTP_HOST}/books? [R=301,L] 

참고 : 아파치 mod_rewrite 문서는 읽기 당신이 뭔가를 원한다면 불분명 위의 규칙이 무엇에 관한, 또는 좀 더 추상적 인 다음 post을 고려하여 경우 가치가있다.

+0

그 반대의 경우. htaccess 파일이 이제 SEO 친숙한 URL을 처리 할 수 ​​있습니다. 문제는 오래된 주소를 새로운 친숙한 URL 주소로 바꾸고 싶을 때입니다. 어떤 이유로 htaccess 파일은 동일한 파일에서 2 개의 RewriteRule 문장을 제외하고는 아닙니다. –

+0

귀하의 질문에 그 대답을 반영하고 반영하도록 도움을 주셨을 것입니다. – arober11

+0

위대한 작품입니다. 한 가지 문제 만 있습니다. 어떤 이유로 리디렉션을하면 http://www.example.com/books?id=3으로 연결됩니다. 결과에서 쿼리 문자열을 제거 할 수 있습니까? –