URL正規化(WWWの有無、SSL対応)のため、htaccessに記述する内容のメモ
幾つかの運営サイトでHTTPSへの対応を迫られていましたので、URLの正規化とindex.phpにアクセスさせない対応に加え「htaccess」の記述を変更しました。
今更ながらですが、サイト運営開始時点でやっておくことでした。SSLに対応させるとURLがHTTPからHTTPSに変わっちゃいますので、内部リンクも全て変えないとクリアできないし、いただいている外部リンクにも弱冠の問題が残ります。
新規に公開予定のサイトも準備中なので、今後運営を開始する際は最初からHTTPSで始められるように、メモとして「htaccess」への記述内容をあげておきますwww
SSL対応はXサーバーだと無料♪
こちらはBBSからですが、これだとSEO的にも良くなさそうです。
SSL対応が済んでHTTPSで開始すると、
この様に表示されます♪
検索側はショッピングサイトだけでなく通常のサイトにも求めていますので、SSLに対応するのはサイト運営にはすでに必須といえるでしょう。今後SSLの対応が無いままだと検索側やブラウザからの締め付けも強くなり、
こんな表示がされたら折角のサイト訪問者も帰りますよねwww
そんなことが無いためのSSL証明書ですが、自分の使っているXサーバーだと標準機能としてついてくるので無料、ありがたいことですね。
SSL対応化への作業手順
1 XサーバーにてSSL対応の申し込み(反映に30~1時間かかる)
2 HTTPS表示になるまでWPの管理画面等には入らない
3 その間を利用して「htaccess」を修正用のものを準備(www統一、index、https等)
4 HTTPS表示が確認できたら修正した「htaccess」をアップロード(FFFTPまたは、Xサーバーから直接も簡単)
5 ツールなどでURL正規化済みかの動作を確認(WWW統一、HTTPS統一)
その後はサイト内のリンク修正、search consoleやアナリティクスの設定変更も必要です。
URL正規化のために「htaccess」に記述したコード
「htaccess」には、以下の通りに入力しました^^
※コピペする場合は、sampleの部分は適宜変更すること。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>
# BEGIN WordPress indexphpにアクセスできないようにする
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# wwwなしに統一
RewriteCond %{HTTP_HOST} ^www\.sample\.com$
RewriteRule ^(.*)$ https://sample.com/$1 [R=301,L]
</IfModule>
# END WordPress
最初のメイン3行でHTTPで来るアクセスをHTTPSに振り分けます。個別のURLでないのでコピペのみで可。
次はWORDPRESSにてindex.phpにアクセスしないための記述。
そして最終の3行はWWW有でのアクセスをwww無しに振り分けるためのもの。sampleの部分を変更すること。
これでSSL対応を加えた、URLの正規化が完了です。
確認とまとめ
その後はサイト内のリンクを「https」に修正、これまで運営してきているサイトの規模によって作業量は異なりますね。ページ数は多くても複雑化してないサイトは意外に簡単に済みました♪ 可能な範囲で「保護された通信」になっていることを確認すればサイト本体の修正作業は終了。
この後はsearch consoleやアナリティクスの設定変更も必要で、個人的にはこっちの方が面倒くさかったような気がします。URLの正規化は運営開始した当初にささっと済ませておくべきことでしたwww
参考にしたサイト及び記事
対応の手順などは公式サイト及び以下のページにて確認させていただきました。
ディスカッション
コメント一覧
まだ、コメントがありません