non-www 설정 방법
본문
.htaccess 에
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
설정해주니 PC 에서는 작동을 잘하는데,
모바일에서는 여전히 www.도메인.com 으로 하면 www.도메인.com 으로 접속이 되네요.
현재 sir.kr 은 모바일 브라우저 주소창에 www.sir.kr 을 쳐도 sir.kr 로 접속이 잘되는데
방법이 뭘까요?
답변 2
사용하신 .htaccess의 리디렉션 규칙은 정상입니다.
기존 리디렉션 기록이 캐싱되었을 가능성이 높습니다.
모바일 브라우저 캐시 삭제 후 다시 접속해 보세요.
카카오톡, 네이버앱 등 특정 인앱 브라우저는
자체 리디렉션 캐시 또는 HTTP 요청 처리를 다르게 할 수 있습니다.
이 경우라면 브라우저를 바꿔(크롬, .. 등) 테스트하시기 바랍니다.
붙임) 특정 전역 PHP 파일 내에 리디렉션 로직을 삽입하기보다는
.htaccess 파일 리디렉션 처리를 서버 레벨에서 하시기 바랍니다.
// www 제거 처리
if (strpos($_SERVER['HTTP_HOST'], 'www.') === 0) {
$new_url = "https://" . substr($_SERVER['HTTP_HOST'], 4) . $_SERVER['REQUEST_URI'];
header("Location: $new_url", true, 301);
exit;
}
이코드를 head.php 파일에 넣으면 항상 www. 없이 접속하게 될 것입니다.