スマホメニュー

WordPressの.htaccessについて-特定のURLだけhttpsに飛ばしたりhttpに飛ばしたり

Wordpressで作ったサイトをSSL化することがあると思います。
サイト全体をhttpsにしたり、もしくはお問い合わせフォームだけhttpsにしたり。
お問い合わせフォームだけでしたら、既存のWordpressのプラグインで簡単に特定のURLだけをSSL化できます。

しかし今回は、サイト全体をhttpsに遷移させて、ある特定のURLだけをhttpに遷移させるというものでした。
いろいろプラグインを探し回りましたが、目的を達成するようなプラグインは見つかりませんでした。

どうやら.htaccessで何とかしないといけないということで、何とかしてみました。

やりたいことのまとめ

  • サイト全体をSSL化する。(httpsへ遷移させる)
  • wpを使ったサイトだけでなく、静的Htmlのページもhttpsへ遷移させる。
  • 特定のURLのみをhttpへ遷移させる。
  • www無しのURLをwww有りのURLへ遷移させたい。

なぜこのような事になったかというと、特定のサービスの機能が、httpsに対応していないが為にこんなことになりました。

WordPressの.htaccessの中身を見てみる

こちらの解説はググるといっぱいでてくるのでそれらにお任せいたします。

参考:今さら人に聞けない!WordPressで使われているmod_rewriteの説明書|クロノドライブ
http://html-coding.co.jp/knowhow/tips/wp_modrewrite/

今回はいろいろ躓いたのですが、そこの解決キーになったのはこちらの部分です。

URLの位置が、「ファイルでも無くフォルダでも無い場合」みたいな感じらしいです。
wpを設置した時に、記事のパーマリンクと等しくなる場所にフォルダがあると上手く表示されないのはこういう事なんですね。

実際に書いたコード

基本的にはいろんなサイトで紹介されているやり方なのですが、Wordpressと組み合わせる方法は全く紹介されてい無かったので、躓きました(笑
結果的に「ファイルでも無くフォルダでも無い場合」の指定をしただけですが、その答えにたどり着くまでどれだけ時間がかかったことか^^;

以下ざっくりと解説します。

6〜7行目

www無しのURLをwww有りに遷移させます。
「example」の箇所を自分のドメイン名に書き換えます。

www有りのURLをwww無しに遷移させる場合。

10〜15行目

httpsでアクセスされた際に指定のURLの場合はhttpへ遷移させます。
10〜11行目に対象のURLを記載します。
URLを増やしたい場合は、[OR]で増やしていけますが、最後のURL指定だけは[OR]をつけません。

18〜23行目

httpでアクセスされた際に指定のURL以外はhttpsへ遷移させます。
18〜19行目に対象のURLを記載します。
こちらはURLを増やしたい場合は、そのまま行数を増やして行きます。

35〜36行目

wpでは無い静的HTMLのページをhttpsへ遷移させます。
この指定が無いとwpで作ったページしかhttpsへ遷移しないので注意です。

チラシの裏

正直今回のような例は殆ど無いかもしれません。
実際にググッて見ても参考が見つからなかったので…探しきれて無いだけかもしれませんが。

なので、いざって時が来るかもしれないので、そういった時はこの記事を参考にしてみてください。

コメントを残す

メールアドレスが公開されることはありません。

Advertising

最近の記事

アーカイブ

Advertising

Advertising

カレンダー

2017年11月
« 10月    
 1234
567891011
12131415161718
19202122232425
2627282930  

タグ

Social