내 기존 페이지에 mod_rewrite를 통합하는 데 총체적 인 노력을하고 있습니다. 현재, 나는 처음부터 새 사이트를 구축하고, 거기에 내가 몇 가지 좋은 깨끗한 URL의 등이 있습니다 CMS를 간단하게 실행,매개 변수가있는 URL을 리디렉션하는 방법은 무엇입니까?
http://www.example.nl/nl/example
오래된 사이트를 필요 일부-다시 작성하지 URL의 리디렉션해야합니다 새 페이지로 이 같은 그 URL의 모양 : 그런의
http://www.example.nl/index.php?page=cake-and-pie&hl=nl_NL
그러나 짧은 버전 :
http://www.example.nl/index.php?page=cake-and-pie
도 작동합니다.
URL이 매개 변수와 함께 "리디렉션 301"으로 리디렉션 될 수 없다는 것을 알아 채는 데 시간이 걸렸습니다. 그래서 this 및 this과 같은 일부 온라인 mod_rewrite 생성기를 시도했지만 그 결과로 출력되는 규칙은 404 오류 만 발생합니다 (리디렉션이 전혀 작동하지 않음).
내 htaccess로 파일 전류는 다음과 같습니다
RewriteEngine On
RewriteBase/
# remove .php;
RewriteCond %{THE_REQUEST} ^GET\ (.*)\.php\ HTTP
RewriteRule (.*)\.php$ $1 [R=301]
# remove index
RewriteRule (.*)/index$ $1/ [R=301]
# remove slash if not directory
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} /$
RewriteRule (.*)/ $1 [R=301]
# add .php to access file, but don't redirect
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteCond %{REQUEST_URI} !/$
RewriteRule (.*) $1\.php [L]
이전 페이지가 존재 포착 것이다. 이전 페이지를 새 페이지로 리디렉션하는 방법은 무엇입니까?
감사합니다.
RewriteCond %{QUERY_STRING} =page=pie
RewriteRule ^index\.php$ /nl/? [L,R=301]
RewriteCond %{QUERY_STRING} =page=pie&hl=nl_NL
RewriteRule ^index\.php$ /nl/? [L,R=301]
편집 트릭을 할 것으로 보인다. 이것은 물론 모든 URL에 대한 수동이지만, 나는 단지 몇 가지 있습니다.
어떻게 든이 부분은 ... 페이지가 리디렉션되지 않습니다. – Lg102