Skip to content

Categories:

さくらインターネット マルチドメイン時の共用SSLでContact Form7を使う

さくらインターネットの共用SSLでContact Form7を対応してみたまとめ。

とりあえず、さくら+共用+Contact Form7という組み合わせのTipsは一杯あったんですが

何故か上手く行かない。

やり方としては、Wordpress HTTPSを使う方法なんだけど
どうしても共用SSLのURLでWPにアクセスすると、通常のhttpにリダイレクトされてしまう。

http://ja.forums.wordpress.org/topic/278

何かこの辺の情報でCanonical URLというのが働いて
リダイレクトされているというような記述があるのですが

でもこれ5年前の記事だしなぁ…

 

んで色々やってみて、なんとか動いてる?ので
忘れない内にメモ。

1.Wordpress HTTPS 3.2をインストールする

3.2以外では今回の環境で上手く行きませんでした。

 

2.Wordpress HTTPS 設定画面の

SSL HOSTに

 

secure523b.sakura.ne.jp/ドメイン名

 

を入力(この時https://は外す)

 

3.一応ドメインマッピングを設定する

なぜ一応かと言うと、普通に独自SSLでやる場合は必ず設定する項目なのですが
この書き換えが上手く行ってない!というか、WP内に存在するファイルだけ書き換えが上手く行かない。
faviconとかは書き換わるのに…
前述のCanonical URLで強制的にhttpに書き換わっているのだろうか…

 

4.Disable Canonical URL Redirectionプラグインをインストール

Canonical URL機能をオフにするプラグインだそうで。
これってオフっていい機能なのかなぁ…SEO的に何か関係があるみたいな記述があったけど

 

5.共用SSL用のページを作成。

編集画面の「Secure post」にチェックを入れる

 

6.作ったページ専用のテンプレートを作成

header、footer、sidebarを別途コピーし、適当にリネームしてページ専用のテンプレから読み込む

 

7.表示されるソースの書き換え

http://xxxx/wp/wp-content/

//secure523b.sakura.ne.jp/ドメイン名/wp/wp-content/

に書き換える。https://にしてしまうと何か分からないが実際に表示させた場合に
何故かhttpに書き換わってしまう!一体何なんだ!!

8.contact form7が吐き出すソースを書き換える

ヘッダーとフッターに自動で吐き出されるjsリンク等を手動で共用SSLのURLで書く(https:抜きで)
ローディングのぐるぐるGifもあるので注意
wp-configの方で、それ自体を止める方法もあるようですが、別の所(非SSLのモバイルフォームとか)で使うので
このページだけwp-head()、wp-footer()を削除。これしちゃうと他のプラグインのjs等も出ないので注意
※今回このページがたまたま、この2つの記述が無くても問題無かったため

 

9.contact form7のsetting.phpを開き

return (string) $wpcf7_request_uri;

return (string) 'https://secure523b.sakura.ne.jp/ドメイン名/'.$wpcf7_request_uri;
に書き換え。ここだけhttpsが付いているのは、非SSLの時にhttpsを抜いたら動かなかったため。

 

以上。
何なんだ!(汗

んーー一体何が原因で、httpsがリダイレクトされるのかがわかりません。
どこか別のサイトでは共用下でもちゃんと書き換えが上手くいってるっぽいのになぁ…
マルチドメインなのが問題なのでしょうか。
そもそも共用SSL自体がさくらが非推奨みたいの書いてあったんだけどな。
その辺は客にあんまセキュリティ的に意味ないっすよーとは伝えたのだけど

 

 

とりあえず、これはPC版なのでWPtouch下でもこれで上手く行くか

検証せねばぁ…

Posted in web.


0 Responses

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.



Some HTML is OK

or, reply to this post via trackback.

*