파일을 사용하여 루트(예 : ) 가 있는 다른 프랑스어 페이지 로 .htaccess
리디렉션하고 싶습니다.www.example.com/fr/
www.example.com/
/fr/
www.example.com/fr/page-name
사용해 보았지만 Redirect 301 /fr/ https://example.com/
모든 프랑스어 페이지가 영어 버전으로 리디렉션되는 것은 원하지 않습니다.
이 문제를 해결할 방법이 있나요?
답변1
Redirect 301 /fr/ https://example.com/
mod_alias Redirect
지시문은 접두사 일치이므로 단순히 시작하는 모든 항목을 리디렉션 /fr/
하고 일치 후의 모든 항목을 대상 URL의 끝으로 복사합니다. 전체 URL 분기(또는 전체 사이트)를 리디렉션하는 데 적합하지만 특정 URL에는 적합하지 않습니다.
RedirectMatch
특정 URL을 리디렉션하려면 단순한 접두사 일치 대신 정규식과 일치하는 를 사용해야 합니다 .
예를 들어:
RedirectMatch 301 ^/fr/$ https://example.com/
기존 mod_rewrite 지시문(예: )이 있는 경우 RewriteRule
여기서 대신 mod_rewrite를 사용해야 할 수도 있습니다(또는 사용하는 것이 더 나을 수도 있음).
참조: