2009年12月30日水曜日

WordPressで送信フォームをSSLにする

WordPress でビジネスサイトを運営していると、セキュリティにも気を配る必要があるでしょう。たとえば、送信フォームのSSLもそのひとつ。独自SSLが同じディレクトリで動作するサーバーの場合、特に複雑なカスタマイズは必要としなかったので、ご紹介をしましょう。

準備として、同じディレクトリで独自SSLが動作するサーバーにWordPressを構築する。次に日本語でも文字化けしない送信フォームとして安心できる「Contact Form 7」と、「Admin SSL」といったプラグインをインストールします。

Admin SSL の設定画面では、「Secure my site with SSL」でチェックボックスを有効にする。「Additional URLs」の URL List に、https://にしたい、ページのURLを書き込む。複数の場合は改行で入力する。

その他、自動的に、WordPress ログイン/ログアウトの画面もhttps://になっていました。

といった感じで、同じディレクトリで独自SSLが動作するサーバーなら簡単にできます。

(2010.2.18追加)

同じディレクトリで独自SSLが動作するサーバーとしては、CORESERVERさくらのマネージドサーバ が可能です。Rapid SSLCOMODOフリーSSL で動作確認しています。
ただ、Admin SSLをアクティブにした直後や、最初のログイン時などは、ループしているとかで先に進めなくなるので、そんな時は一度クッキーを削除します。

この方法なら、コストもそれほど必要なく、わりと簡単に、独自SSL対応CMSサイトが実現できるので、SSLにまだ非対応な企業サイトに、CMSとセットでお勧めできると思います!

3 コメント:

  1. こんにちは。
    上記の記事を参考にWordPressのSSL化を試してみました。

    使用環境は以下となります。

    WordPress:Version2.9.2
    サーバー:さくらのマネージドサーバ(ビジネスプラン)
    SSL:Rapid SSL

    まず、プラグインインストール後、WordPress管理画面のSSL化は成功しました。

    次にお問い合わせページ「http://www.hoge.com/contact/」のSSL化を試してみようと思い、
    「Additional URLs」に「http://www.hoge.com/contact/」を追加しましましたが、httpsになりません。
    直接ブラウザにhttpsでURLを打ち込んでもhttpにリダイレクトされてしまいます。

    何か設定に問題があるのでしょうか?
    お手数ですが、ご教示願えないでしょうか
    返信削除
  2. WordPress3.1で不具合確認。Admin SSLだと画面が真っ白に。プラグインファイルを削除します。
    代替プラグインとしては、WPSSLがあります。
    http://wordpress.org/extend/plugins/wpssl/
    返信削除
  3. もうひとつ、 WordPress HTTPS http://goo.gl/I6SYE というプラグインがありました。こっちの方が良い感じです。
    返信削除