サポート » 使い方全般 » 一部ページのみhttpsへリダイレクトさせる件

  • contactページだけhttpsへリダイレクトしたいと思い、.htaccessに以下の様に入力し、ルートフォルダへアップしました。

    ————————————————
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_URI} .*/contact.*$
    RewriteCond %{HTTPS} off
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
    </IfModule>

    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress
    ——————————————-

    contactページにアクセスしたところ、httpsのURLにリダイレクトされてますが、
    ページが表示されません。

    TOPページは、httpsのURLで表示されます。
    CSSや画像のリンクがhttpsのURLに変更されています。
    下層ページは、CSSや画像のリンクがhttpsのURLに変更されないのでしょうか?
    対処方法がありましたら教えてください。

    なお、常時SSL化(サイト全体のSSL化)については、いろいろな問題があり、
    今回は採用しません。
    理由:
    ・サイト内で掲載する画像が1600枚以上ある。
    ・全ページ(フォーム以外)に外部リンクが多数ある。

    サーバーはさくらインターネットです。
    独自ドメインを使用してますが、URLはサブドメインです。
    ○○○.ドメインの形です。
    独自SSLは、無料SSL「Let’s Encrypt」です。

5件の返信を表示中 - 1 - 5件目 (全5件中)
  • CG

    (@du-bist-der-lenz)

    WordPressシステムの上において、「下層ページ」とはどういうものでしょうか。CSSや画像のリンクというのは、スタイルシートとメディアへのリンクだと思われますが、それぞれにhttpsで統一しましょう。

    トピック投稿者 design_office

    (@design_office)

    CG様

    ご返事が遅れましてすみません。

    wordpressでは下層ページの概念はないですね。失礼しました。固定ページで作成したページになります。

    CSSや画像のリンクをそれぞれにhttpsで統一するとは、どういう意味なのか、わからないのですが、
    教えてください。
    常時SSL化するということでしょうか?

    常時SSLが一番簡単だと思いますけどねぇ。
    外部リンクはSSLである必要はありません(iframeなどで埋め込んでいる場合除く)

    まぁそれは兎も角

    まず .htaccess の優先順として、WordPress が書き込む設定を最初に来るようにしてみてください。
    #BEGIN WordPress
    #END WordPress
    を先頭にして、追加設定はその下にかくというかんじですね。
    あとは、

    http://blog.zamuu.net/2013/0620/wordpress-contactform7_ssl/

    あたりを参考にしたらいいんじゃないかなーと思います。

    トピック投稿者 design_office

    (@design_office)

    kimipooh様

    ご返答ありがとうございます。
    以下のように修正しましたが、やはりcontactページが表示されないです。
    ちなみに、パーマリンクの設定はカスタム構造で/%category%/%postname%/にしています。
    もし解決方法がありましたらお願いします。

    ————————–
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php

    RewriteCond %{REQUEST_URI} .*/contact/$
    RewriteCond %{HTTPS} off
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]

    RewriteCond %{REQUEST_URI} !(.*/contact/$)
    RewriteCond %{HTTPS} on
    RewriteRule ^(.*)$ http://%{HTTP_HOST}%{REQUEST_URI} [R,L]
    </IfModule>
    ———————————

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /

    RewriteCond %{HTTPS} off
    RewriteCond %{REQUEST_URI} ^/contact/$
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]

    RewriteRule ^index\.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php
    </IfModule>

    ならどうでしょうか。

5件の返信を表示中 - 1 - 5件目 (全5件中)
  • トピック「一部ページのみhttpsへリダイレクトさせる件」には新たに返信することはできません。