HTTPSにおけるリダイレクト設定に関する問題と解決方法

このQ&Aのポイント
  • HTTPSにおけるリダイレクト設定に関してApache2.2+mod_sslでの問題が発生しています。特定のURLへのアクセスに対して正しいSSL証明書が表示されず、エラーメッセージが表示される問題です。
  • 問題の原因は、証明書が特定のドメインに対して発行されていないためです。具体的には、「https://sample.com/」へのアクセス時に正しい証明書が表示されず、エラーメッセージが表示されます。
  • 問題を解決するためには、以下の手順を行う必要があります。 1. 「sample.com」に対しても証明書を発行する。 2. リダイレクト設定を行い、すべてのアクセスが「https://www.sample.com/」にリダイレクトされるようにする。
回答を見る
  • ベストアンサー

HTTPSにおけるリダイレクト設定に関して

Apache2.2+mod_sslにてSSL通信環境を構築しました。 DNS設定は「sample.com」も「www.sample.com」も同じサーバIPを指定しております。 「www.sample.com」をコモンネームとした証明書を認証局から取得し、 「https://www.sample.com/」にアクセスする場合は問題はありませんでした。 しかし、「https://sample.com/」にアクセスすると、 IEでは「このWebサイトのセキュリティ証明書には問題があります。」と表示されてしまいます。 この問題を解決しようとリダイレクトの対処も含め、以下の様な対応を行いましたが解決できませんでした。 どの様な対応を行えば、上記問題を解決する事ができるのでしょうか? 「sample.com」についても証明書を発行してもらうしかないのでしょうか? 皆様のお知恵をお借りしたく、何卒よろしくお願い致します。 以下、行った対応 ―――――――――――――――――――――― ■mod_rewrite.soを有効にする。 LoadModule rewrite_module modules/mod_rewrite.so ■httpd.confの末尾に以下を追記する。 <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTP_HOST} ^sample\.com RewriteRule ^/(.*)$ https://www.sample.com/$1 [R=301,L] RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^/(.*)?$ https://%{HTTP_HOST}/$1 [L,R] </IfModule> ■3.httpd-ssl.confに以下を追記する。 <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTP_HOST} ^sample\.com RewriteRule ^/(.*)$ https://www.sample.com/$1 [R=301,L] </IfModule>

  • x509
  • お礼率100% (1/1)

質問者が選んだベストアンサー

  • ベストアンサー
  • fumikun2
  • ベストアンサー率25% (17/67)
回答No.1

ワイルドカード証明書じゃない限り、www.sample.com の証明書は sample.com では使えません。

x509
質問者

お礼

回答ありがとうございます。 やはり証明書をなんとかしないと、どうしようもないですか・・・。 今回ベリサインにて証明書を取得したのですが、ワイルドカードの証明書は発行していない様ですので、新たに「sample.com」の証明書を取得するか検討したいと思います。 https://www.verisign.co.jp/ssl/help/faq/110114/index.html

関連するQ&A

  • httpからhttpsへのリダイレクト方法

    すいません、よくわかりませんので教えて下さい。.htaccessに記述してhttpにアクセス来たものをhttpsへリダイレクトしたいです。 今の状況は下記です。 AddHandler application/x-httpd-php53 .php RewriteEngine On # Main RewriteRule for multidomain. RewriteCond %{HTTP_HOST} ^(sanetsu.com) RewriteCond %{REQUEST_URI} !^/(sanetsu.com)/ RewriteRule ^(.*)$ http://www.sanetsu.com/$1 [L] # Main RewriteRule for multidomain. RewriteCond %{HTTP_HOST} ^(www.burikama.com) RewriteCond %{REQUEST_URI} !^/(www.burikama.com)/ RewriteRule ^(.*)$ /%{HTTP_HOST}/$1/ [L] # Main RewriteRule for multidomain. RewriteCond %{HTTP_HOST} ^(burikama.com) RewriteCond %{REQUEST_URI} !^/(burikama.com)/ RewriteRule ^(.*)$ http://www.burikama.com/$1 [L] # 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 すいません、上記の記述をどのように変更したらhttpsへリダイレクトさせることができますでしょうか?前任のweb担当の方と連絡が付かないので教えていただけたらありがたいです。 宜しくお願い致します。

    • ベストアンサー
    • HTML
  • 301リダイレクトの設定について

    htmlコーディングの知識は多少あるのですが、サーバーの設定については全くの初心者です。 .htaccessリダイレクトの方法がわからないのでお教えください。 旧サイトが「https://www.sample.com/aaa/bbb/」にあったのですが、新しいサイトを「https://www.sample.com/ccc/」に作成しました。新サイトと旧サイトのディレクトリの構成はまったく異なります。 旧サイト全体に301リダイレクトを設定して旧サイトのどのページにアクセスしても新サイトのTOPページに移動させたいのですが、.htaccessの書き方がわかりません。 Googleでいろいろ検索し、下記のように記述した.htaccessファイルをbbbディレクトリに格納してみましたが、うまくいきませんでした。 <IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^aaa/bbb/(.*) /ccc/$1 [R=301,L] </IfModule> また、以下ではInternal Server Errorになりました。 <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTP_HOST} ^(www.sample.com)(:80)? [NC] Redirect permanent /aaa/bbb/ RewriteRule ^(.*) https://www.sample.com/ccc/$1 [R=301,L] </IfModule> アドバイスをいただけないでしょうか。 よろしくお願いいたします。

  • .htaccessでリダイレクトしたいです@さくら

    .htaccessでwwwなしのサイトにリダイレクトをかけたいのですが、うまくいきません。 色んな方法がサイトにありそれを試しているのですが、 一瞬テストでうまくいったと思ったのですが、それ以降うまくいかなくなってしまいました。 使用しているプロバイダはさくらインターネットです。 今までに試したコマンドは下記です。 --------------------------- <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTP_HOST} ^(www.hoge\.com)(:80)? RewriteRule ^(.*) http://hoge.com/$1 [R=301,L] </IfModule> --------------------------- RewriteEngine on RewriteCond %{HTTP_HOST} www¥.hoge¥.com RewriteRule .* http://hoge.com%{REQUEST_URI} [R=301,L] --------------------------- .htaccess を設置しているディレクトリは /home/hoge/www になります。 ぜひ教えていただけないでしょうか。よろしくお願いいたします。 また、.htaccessは変更してどのくらいで反映されるのか、補足的に教えていただけると助かります。 以上、よろしくお願いいたします。

  • httpsでmod_rewriteができない

    はじめまして。 Linux環境で、apacheのhttp.confにmod_rewriteを記載し、httpsとhttpを切り替えたいと思っています。 httpd.confに以下のように記述しています。 <IfModule mod_rewrite.c> RewriteEngine on  #(1)httpで/aaaa/bbbbにアクセスされたときにhttps://~に変えたい RewriteCond %{REQUEST_URI} ^/aaaa/bbbb RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R]  #(2)httpsで/cccc/ddddにアクセスされたときにhttp://~に変えたい RewriteCond %{REQUEST_URI} ^/cccc/dddd RewriteCond %{HTTPS} on RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R] </IfModule> 上記(1)のhttpでのアクセス時には、mod_rewriteが効いてhttpsへ切り替えられるのですが、 上記(2)のhttpsでのアクセス時には、mod_rewriteが効いていないようでhttpへ切り替えられません。 rewriteログを見てみると、当サイトへhttpでアクセスした場合にはログが出力されますが、 httpsでアクセスした場合には出力されません。 そもそもhttpsでのアクセスの場合にhttpd.confのmod_rewriteが効いていないようです。 ですが、これに対しどこを調査すべきかが分かっていません。 SSLの設定自体は出来ていると思っていて、 https://xxxx.jpのようにアクセスするとちゃんとページが表示されます。 どの当たりに問題がありそうでしょうか? 解析のヒントを頂けたらと思います。 宜しくお願い致します。

  • SSLのリダイレクトについて

    sslのリダイレクトの作業を急いでやらないといけないのですが、sslに関しては全くの初心者なので調べながらいろいろやってみましたがどうしてもうまくいかず困っています。。 Wordpressでサイトを作成していてドメイン直下の.htaccessにリダイレクトの記述をしています。 サーバーはGMOのiCLUSTAで、sslはジオトラストです。 http://○○○.jp/ にアクセスした場合に、 https://ssl.○○○.jp/ へリダイレクトされるようにしたいです。 .htaccessの記述内容です # 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 RewriteEngine on RewriteCond %{HTTPS} on RewriteRule ^(.*)$ https://ssl.○○○.jp/$1 [R=301,L] この記述をしていますが、リダイレクトされたりされなかったりの不安定な状態です。 されないことの方が多いのでどの条件で動いているのかがわかりません。 RewriteCond %{HTTPS} on を、 RewriteCond %{HTTPS} off にするとリダイレクトされますが、処理がループされていますという表示が出てしまいます。 どのような記述をすればうまくいくのでしょうか?

  • htaccess リダイレクトの記述方法

    「wwwなし http://www.abc.net/」から 「wwwありに統一 sslありのhttps://www.abc.net/」にリダイレクトしたいのですが、以下の記述で合っていますでしょうか。よろしくお願いします。 Options +FollowSymLinks RewriteEngine on RewriteCond %{HTTP_HOST} ^abc.net RewriteRule ^(.*)$ http://www.abc.net/$1 [R=301,L] RewriteEngine on RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

    • ベストアンサー
    • HTML
  • 301リダイレクトの設定について

    「○○○.jp」と「www.○○○.jp」を統一し、どちらのURLからの アクセスでも「○○○.jp」ディレクトリ内のコンテンツが 表示されるように設定したいと考えております。 契約しておりますレンタルサーバ会社では.htaccessファイルの 編集内容についてはサポートしておらず、ネット上で設定方法を 検索して試みておりますが、アクセスすると403のエラーが表示され 上手くいっておりません。 以下に.htaccessの設定内容をとエラーの状況を記載いたします。 Webサーバの運用については知識が皆無の為、非常に難儀しております。 不備があればご指摘いただき、またその他の設定等での不具合の 可能性があれば、それもご教示いただけませんでしょうか。 宜しくお願い申し上げます。 ---------------------------------------------------------------- # Enable RewriteEngine. RewriteEngine On # Main RewriteRule for multidomain. RewriteCond %{HTTP_HOST} ^(◆◆◆.jp|▲▲▲.com|■■■.com|◇◇◇.com|○○○.jp|www.○○○.jp) RewriteCond %{REQUEST_URI} !^/(◆◆◆.jp|▲▲▲.com|■■■.com|◇◇◇.com|○○○.jp|www.○○○.jp)/ RewriteRule ^(.*)$ /%{HTTP_HOST}/$1/ [L] Options +FollowSymLinks RewriteEngine on RewriteCond %{HTTP_HOST} ^www.○○○\.jp RewriteRule ^(.*)$ http://○○○.jp/$1 [R=301,L] ----------------------------------------------------------------

  • mod _rewriteによる二重リダイレクト

    mod_rewriteで下記のようなことをしたいと思っています。 1.http://~/ABCDEFG.jpgにアクセスがあったら、 2.http://~/AB/CD/EFG.jpgにリダイレクトする。 3.http://~/AB/CD/EFG.jpg がなかったらhttp://~/NO.jpgにリダイレクトする。 2.まではできるのですが、3.に進みません・・・。 このようなことを実現できないでしょうか。すごく困っております・・・。 お手数ですがご教示いただけないでしょうか。 ---- 以下2.までできたmod_rewrite <DirectoryMatch ~> <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ([a-z0-9A-Z][a-z0-9A-Z])([a-z0-9A-Z][a-z0-9A-Z])([a-z0-9A-Z]+\.jpg) $1/$2/$3 [L] </IfModule> </DirectoryMatch>

    • ベストアンサー
    • PHP
  • https→httpsのrewriteが出来ない

    https→httpsのrewriteが上手くいきません。 追加ドメイン取得前より、http→httpsのrewriteの設定をして利用していました。 今回、追加ドメイン(これを正式なURLとしたい)を取得したことにより、1つのファイルへ複数のドメインでアクセス出来る状況になってしまいました。  さくらのVPS   仮)IPアドレス   49.39.29.19     初期ドメイン  www1111aa.sakura.ne.jp  さくらのドメイン   仮)追加ドメイン  www.bbbb.com  ※CentOS httpd.confの2つのファイルを書きなおし、以下のrewriteは成功しました。  http://49.39.29.19 → https://www.bbbb.com  http://www1111aa.sakura.ne.jp→ https://www.bbbb.com  http://bbbb.com → https://www.bbbb.com しかしhttps→httpsの設定が上手くいかず、以下についてはそのままのアドレスとなってしまいます。  https://49.39.29.19  https://www1111aa.sakura.ne.jp  https://bbbb.com 上記の場合でもhttps://www.bbbb.comへ飛ぶように設定したいのですが、どのようにしたらよいかご教授ください。 ちなみに。私が既にhttpd.confに書いてダメだったものは以下です。 (1) <VirtualHost 49.39.29.19:443 > ServerName www.bbbb.com Redirect / https://www.bbbb.com </VirtualHost> (2) <IfModule mod_rewrite.c> RewriteEngine on ・・・ RewriteCond %{SERVER_PORT} ==443$ RewriteRule ^/(.*)?$ https://www.bbbb.com/$1 [L,R] </IfModule> ※ ^443$ともしてみましたがダメでした。 (3) <VirtualHost 49.39.29.19:443 > RewriteEngine On RewriteCond %{HTTP_HOST} ^bbbb\.com RewriteCond %{HTTP_HOST} ^www1111aa\.sakura\.ne\.jp RewriteCond %{HTTP_HOST} ^49\.39\.29\.19 RewriteRule /(.*) https://www.bbbb.com/$1 [R=301,L] </VirtualHost> ※VirtualHost以下を<IfModule mod_rewrite.c>で囲んだり、VirtualHostを<IfModule mod_rewrite.c>に変えたりしてみてもダメでした。 (4) Listen 80 Listen 443  と443を追記してみると、アパッチが再起動しなくなりました。エラー内容は以下です。 <エラー内容> NameVirtualHost *:80 has no VirtualHosts (98)Address already in use: make_sock: could not bind to address [::]:443 (98)Address already in use: make_sock: could not bind to address 0.0.0.0:443 no listening sockets available, shutting down Unable to open logs 仕事で急遽サーバー構築をしなければならなくなり勉強をしているもので、素人ですので分かりやすい言葉で説明していただけると助かります。 よろしくお願いします。

  • スマフォの振り分け

    .htaccess で以下のように振り分けたのですが、i pod touch で見ると アドレス欄には http://ドメイン/smart/ を読み込むのですが、 ページが開けないになります。どうしてでしょうか? <IfModule mod_rewrite.c> RewriteEngine On # iPod RewriteCond %{HTTP_USER_AGENT} iPod RewriteRule ^ http://ドメイン/smart/ [R] # iPhone RewriteCond %{HTTP_USER_AGENT} iPhone RewriteRule ^ http://ドメイン/smart/ [R] # Android RewriteCond %{HTTP_USER_AGENT} Android RewriteRule ^ http://ドメイン/smart/ [R] # WILLCOM RewriteCond %{HTTP_USER_AGENT} PDA RewriteRule ^ http://ドメイン/smart/ [R] </IfModule>

    • ベストアンサー
    • HTML