仙台・宮城の皆さんこんにちは! 2018年7月にリリースされたGoogle Chromeの新バージョン「Chrome68」では、すべてのhttp接続のページに警告が表示される仕様になりました。どんなにいいコンテンツを作っても「警告」が出てしまっては、信頼もガタ落ちです。 これから益々、サイト全体をSSL化して常時SSLでページを表示することが重要性になります。今日は「htaccessでhttpからhttpsへリダイレクトする方法と、wwwあり・なし統一も一緒に記述」する解説します。 [toc] httpからhttpsへリダイレクト まずは、httpからhttpsへリダイレクトします。 <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L] </IfModule> これでhttp://andseek.jpにアクセスすると、自動的にhttps://andseek.jpにリダイレクトされます。 wwwあり・なし統一 続いて、wwwあり・なし統一です。例では「wwwなし」に設定する場合です。 <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTP_HOST} ^www\.datena\.net RewriteRule (.*) http://andseek.jp/$1 [R=301,L] </IfModule> これでhttp://www.andseek.jpにアクセスすると、自動的にhttp://andseek.jpにリダイレクトされるようになります。 両方を記述 それでは、両方記述しましょう。 <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTP_HOST} ^www\.datena\.net RewriteRule (.*) http://andseek.jp/$1 [R=301,L] RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L] </IfModule> 上記のように記述すれば、http://www.andseek.jpにアクセスすると、自動的にhttps://andseek.jpにリダイレクトされるようになります。 これでURL統一は完璧です。 ちなみにWordPressで記述する際には、注意が必要なので下記のページをご覧ください。 [related id=40 label=WordPressでリダイレクトを記述] おまけ 最初の行にあるIfModule mod_rewrite.cは、何をしているんでしょうか? <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTP_HOST} ^www\.datena\.net RewriteRule (.*) http://andseek.jp/$1 [R=301,L] RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L] </IfModule> これは利用環境でmod_rewriteが利用できるかどうかを確認しています。「mod_rewriteが利用できる環境ならば・・・」という感じです。 mod_rewriteが利用できない環境でmod_ rewriteのコードを記述するとエラーが発生してしまうので、このようにmod_ rewriteが利用できるか確認を行なっているわけです。 まとめ 冒頭でも書きましたが、これから常時SSLが重要になることは明白です。最近は無料でSSL化できるサービス(Let's Encrypt)も登場し、それを利用できるレンタルサーバーも増えました。 常時SSL化した際は、必ずhtaccessでURLを統一しましょう! それではまた!仙台・宮城でのホームページ制作やサイトリニューアルならアンドシークまで!もちろん宮城県外の方も大歓迎です!