예를 들어, www.abc.com/blog와 같은 서브디렉터리를 blog.abc.com과 같은 서브도메인으로 리디렉션시켜야 하는 경우가 있을 수 있습니다.
이와 같은 상황에 대해 검색해보니 보통 다음과 같은 코드가 많이 검색되었습니다.
RewriteEngine On RewriteCond %{HTTP_HOST} ^(www\.)?domain.com$ [NC] RewriteRule ^/?blog/(.*)$ http://blog.domain.com/$1 [L,R=301] // Source: Stackoverflow
하지만 저는 위와 같은 코드를 .htaccess에 추가해도 이상하게 제대로 작동하지 않았습니다.
인터넷에 검색되는 다양한 코드를 테스트하여 다음과 같은 코드가 제대로 작동하는 것을 확인할 수 있었습니다.
RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} ^example.com [NC] RewriteRule ^(.*)$ http://www.example.com$1 [L,R=301] RedirectMatch 301 ^/blog/(.*)$ http://blog.example.com/$1 // Source: https://paulund.co.uk/redirect-folder-subdomain
하위 디렉터리에 설치된 워드프레스 블로그를 네이버 웹마스터 도구를 통해 등록하려고 하니까 같은 도메인의 경우 중복 등록이 안 되네요. 할 수 없이 하위 폴더에 설치된 블로그를 서브도메인으로 바꾸어서 네이버웹마스터도구에서 등록할 수 있었습니다. 그리고 위와 같은 코드를 통해 서브디렉터리로 된 URL을 서브도메인으로 301 리다이렉트시켜주었습니다.
혹시 blog.abc.com을 abc.com/blog 로 표시 되게 리다이텍트 할수있는 방법은 잇을까요?
안녕하세요? 다음과 같은 코드를 서브도메인의 .htaccess 파일에 넣어서 테스트해보시겠어요?
RewriteEngine on
RewriteCond %{HTTP_HOST} ^blog.abc.com
RewriteRule ^(.*)$ http://abc.com/blog$1 [L,NC,QSA]
참고: https://stackoverflow.com/questions/37460537/redirecting-subdomain-to-subdirectory-through-htaccess