質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
HTTP

HTTP(Hypertext Transfer Protocol)とはweb上でHTML等のコンテンツを交換するために使われるアプリケーション層の通信プロトコルです。

HTTPS

HTTPS(Hypertext Transfer Protocol Secure)はHypertext Transfer プロトコルとSSL/TLS プロトコルを組み合わせたものです。WebサーバとWebブラウザの間の通信を暗号化させて、通信経路上での盗聴や第三者によるなりすましを防止します。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

Q&A

1回答

6013閲覧

apache2でhttpからhttpsへのリダイレクトができない

rin1857

総合スコア6

HTTP

HTTP(Hypertext Transfer Protocol)とはweb上でHTML等のコンテンツを交換するために使われるアプリケーション層の通信プロトコルです。

HTTPS

HTTPS(Hypertext Transfer Protocol Secure)はHypertext Transfer プロトコルとSSL/TLS プロトコルを組み合わせたものです。WebサーバとWebブラウザの間の通信を暗号化させて、通信経路上での盗聴や第三者によるなりすましを防止します。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

0グッド

0クリップ

投稿2018/04/11 13:01

編集2018/04/12 02:24

前提・実現したいこと

環境
Ubuntu16.04
apache2
VirtualHostにより複数のサブドメインを運用。
動作確認ブラウザはChrome 65.0.3325.181。その他Vivaldi、Firefox、Edgeでも確認。

サイト全体ををSSLに対応(let's encrypt)したため、httpのアドレスで来たアクセスをhttpsのアドレスにリダイレクトしたいと思っています。

発生している問題・エラーメッセージ

各ブラウザでアクセスしたところ、https://example.netでのアクセスはできるが、http://example.netでアクセスしようとすると、リダイレクトされず「このサイトにアクセスできません 接続がリセットされました。」となってしまう。いずれのブラウザ、シークレットウィンドウでのアクセスでも同様。

Chrome://net-internals/#events でリクエストとレスポンスを確認したところ以下のようになる。
URL_REQUEST

t=38660 [st=1035] -HTTP_STREAM_REQUEST t=38660 [st=1035] -URL_REQUEST_START_JOB --> net_error = -102 (ERR_CONNECTION_REFUSED) t=38661 [st=1036] URL_REQUEST_DELEGATE [dt=0] t=38661 [st=1036] -REQUEST_ALIVE --> net_error = -102 (ERR_CONNECTION_REFUSED)

###ソースコード
/etc/apache2/sites-enabled/example.net.conf

<VirtualHost *:80> ServerName example.net DocumentRoot /var/www/(略) ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] </IfModule> </VirtualHost> <VirtualHost *:80> ServerName sub.example.net 以下同様 </VirtualHost>

試したこと

/etc/apache2/apache.confのmod_rewriteは有効にしてあります。

LoadModule rewrite_module modules/mod_rewrite.so

.htaccessで

<IfModule mod_rewrite.c> RewriteEngine on RewriteBase / RewriteRule ^.*$ http://www.google.co.jp [L] </IfModule>

を試したところ、Googleへのリダイレクトは確認できました。

各サイトを見て回り試しましたが、解決には至りませんでした。
よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

wp-h

2018/04/11 14:32

httpへ接続した際のリクエスト、レスポンスがあるとステータスコードとか色々切り分けがしやすいです。。
rogueref

2018/04/11 23:47

ブラウザはなにを使っていますか? Firefoxのプライベートウィンドウや、Chromeのシークレットウィンドウでトライするとどうなるでしょうか。
guest

回答1

0

つ%{HTTP_HOST}→%{SERVER_NAME}

投稿2018/04/12 03:09

hichon

総合スコア5737

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問