특정 디렉터리에 대해 특정 도메인 이름을 강제로 사용하는 Mod_rewrite 규칙

특정 디렉터리에 대해 특정 도메인 이름을 강제로 사용하는 Mod_rewrite 규칙

내 사이트의 특정 디렉토리에 대해 다른 호스트 이름/도메인 이름을 강제로 사용하고 싶습니다.

현재 mainsite.com/directory에는 여러 웹페이지가 포함된 디렉토리가 있습니다. 해당 디렉토리에만 있는 페이지의 경우 사용자 주소 표시줄의 도메인 이름을 다른 사이트.com으로 변경하고 싶습니다. 이상적으로 페이지는 Differentsite.com의 루트 수준에 있는 것으로 나타납니다.

이를 위해 WordPress .htaccess 파일에 어떤 규칙을 추가할 수 있나요?

답변1

이 작업을 수행하려는 각 디렉터리에 대해 다음 3줄의 블록을 만듭니다. 지시문 다음에 이 작업을 수행합니다 RewriteEngine on. 이 예에서 www.example.com은 디렉터리에 사용하려는 도메인입니다.

RewriteCond %{REQUEST_URI} ^/directory1(.*)
RewriteCond %{HTTP_HOST} !^www\.example\.com$
RewriteRule .* http://www.example.com%1 [L,R]

테스트한 후에는 SEO 친화성을 높이기 위해 영구 리디렉션을 표시하도록 [L,R]로 변경하세요. [L,R=301]브라우저가 리디렉션을 캐시하게 되므로 테스트가 복잡해지기 때문에 시작할 필요가 없습니다.

위의 작업이 작동하려면 서버가 다른 도메인을 수신하도록 구성되어 있는지 확인하고 해당 도메인에 액세스할 때 하위 폴더(이 경우 디렉터리 1)의 전체 경로를 도메인의 문서 루트로 사용하십시오. .

이를 수행하는 방법을 모르고 URL에 하위 디렉토리가 있어도 괜찮다면 기본 도메인과 동일한 문서 루트를 사용하도록 다른 도메인을 구성한 후 다음 규칙을 사용하십시오.

RewriteCond %{REQUEST_URI} ^/directory1.*
RewriteCond %{HTTP_HOST} !^www\.example\.com$
RewriteRule .* http://www.example.com%{REQUEST_URI} [L,R]

관련 정보