いずれか可能なものを配置(記入)することでドメイン問わずそのままコピペで利用可能
JavaScript は301ではないけど、一応 非SSLからSSLに持っていけるので…
.htaccess (Apache)
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>
1、7行目は mod_rewriteというURLの書き換え用モジュールがインストールされてい場合に適用されるよってこと 有無がわかっている場合は省略可能
2行目は 上記モジュールエンジンを有効に 3行目は 有効範囲の指定ですのでこの場合は省略可能
5行目 は非SSL通信かどうかの確認(そうでなければ何もしない) です。
6行目 は 5行目で設定した条件に従い SSL通信へ301リダイレクト
httpd.cnf (Apache)
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
VPSや自宅サーバーなどで複数サイトを管理している場合は一括管理できるかも
PHP(少ページの場合)
if (empty($_SERVER['HTTPS'])) {
header( "HTTP/1.1 301 Moved Permanently" );
header("Location: https://{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}");
exit;
}
JavaScript(更に少ページ)
if(!(location.protocol === "https:")){
location.href="https://" + location.host + location.pathname;
}else{
};
}
コメント