apache 에서 모든 URL을 강제로 https 로 변경하는 방법
크게는 mod_redirect와 mod_rewrite두가지를 이용해서 할 수 있습니다.– mod_redirectSource code <VirtualHost *:80>
DocumentRoot /home/www
ServerName gabia.com
ServerAlias www.gabia.com
<Location />
RedirectMatch /(.*)$ https://www.gabia.com/$1
</Location>
</VirtualHost>gabia.com 으로 들어왔을때 Location이 / (root) 일 경우match 되는 모든것들을 $1 변수를 이용하여 redirect 시키는 방법 입니다.– mod_rewriteSource code <VirtualHost *:80>
DocumentRoot /home/www
ServerName gabia.com
ServerAlias www.gabia.com
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
</IfModule>
</VirtualHost>gabia.com 으로 들어왔을때 mod_rewrite 가 모듈에 올라가 있고 HTTPS로 요청한것이 아니라면 강제로 redirect 시키는 방법입니다.[R,L] 에서 R은 강제로 redirect 시킨다는 뜻 입니다. http status code에 의해 분기할 수 있습니다.L은 마지막 RewriteRule 이라는 뜻 입니다. 이후의 RewriteRule은 모두 무시됩니다.만약 해당 설정 아래에 또다른 RewriteRule이 필요하다면 L를 빼면 됩니다.Tags: apache, https, mod_redirect, mod_rewrite, ssl …