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

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

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

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Apache

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

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

プロキシ

プロキシは、二つ以上の相互接続されているプログラム又はデバイスの間に存在する中間サーバを指します。プロキシは、接続者の「代理」としてインターネット接続を行い、接続元にレスポンスを返します。また、その機能を実現するソフトウェアの意味合いもあります。

Q&A

解決済

1回答

723閲覧

Apacheのプロキシ設定について

mercurius51

総合スコア12

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Apache

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

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

プロキシ

プロキシは、二つ以上の相互接続されているプログラム又はデバイスの間に存在する中間サーバを指します。プロキシは、接続者の「代理」としてインターネット接続を行い、接続元にレスポンスを返します。また、その機能を実現するソフトウェアの意味合いもあります。

0グッド

1クリップ

投稿2019/03/01 15:11

編集2019/05/18 21:53

現在、Apacheでリバースプロキシのサーバを立てており、その他のサーバ二台に中継しています。

リバースプロキシ自体は特に問題ないのですが、リバースプロキシに行く前にhttpで来た接続をhttpsにリダイレクトしたいと考えました。
上記をしないとhttpにアクセスした際に400のエラーメッセージが返却されるためです。
そこで以下のことについて質問したいと思います。

1.リバースプロキシ環境下でHTTPリクエストををHTTPSにリダイレクトする

環境については以下になります。
OS:CentOS 7.6
Apache httpd 2.4.6

試したこととしては/etc/httpd/conf.d/rewrite.confに以下の設定を入れてみました

<VirtualHost *:80> RewriteEngine on RewriteCond %{HTTPS} off RewriteRule ^/(.*)$ https://%{HTTP_HOST}/$1 [R=301,L] </VirtualHost>

その際コンソールには以下のエラーメッセージが出力されます

[root@localhost conf.d]# systemctl restart httpd Job for httpd.service failed because the control process exited with error code. See "systemctl status httpd.service" and "journalctl -xe" for details.

/var/log/httpd/error_logには以下の出力があります

[Sun May 19 06:49:57.647722 2019] [suexec:notice] [pid 16327] AH01232: suEXEC mechanism enabled (wrapper: /usr/sbin/suexec) [Sun May 19 06:49:57.651694 2019] [ssl:emerg] [pid 16327] AH01892: Illegal attempt to re-initialise SSL for server (SSLEngine On should go in the VirtualHost, not in global scope.) [Sun May 19 06:49:57.651725 2019] [ssl:emerg] [pid 16327] AH02312: Fatal error initialising mod_ssl, exiting.

ご教示いただけますと幸いです。
以上、よろしくお願いいたします。

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

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

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

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

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

wwbQzhMkhhgEmhU

2019/03/01 21:26

何台のサーバがあって、どこで何のサービスが立ち上がっているのか構成が分からないのと、proxyをどう使いたいのかがよく分からないのがあって、今ひとつ理解できていないのが一点。 私自身、実験程度でしか使ったことがない機能であることが一点で、回答はできません。 とりあえずapacheなら、mod_rewriteでその手のリダイレクト関連の設定が出来たと思います。 以上情報まで。
otn

2019/03/01 23:06

いろいろ試した内容を書いてください。
CHERRY

2019/05/19 04:29

"systemctl status httpd.service" や "journalctl -xe" で、どの様なメッセージが表示されますか? また、 apachectl configtest の結果は、どうなりますか? 記載いただいているログでは、SSL 周りでエラーが出ているようですが、 SSL や Virtaulhost 関係の設定はどうなっていますか?
guest

回答1

0

ベストアンサー

error_logのメッセージはコピペしただけで、読まれなかったのでしょうか?

SSLEngine On should go in the VirtualHost, not in global scope

が原因です。

投稿2019/05/19 15:20

otn

総合スコア84499

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

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

mercurius51

2019/05/19 15:25

ご回答ありがとうございます もちろん読んでおりますが、なぜこのエラーが出ているのか分からないため質問させていただきました 言葉が足りていなかったのであれば申し訳ありません
otn

2019/05/20 06:25 編集

呼んだのに原因が分からないとうことは、SSLEngine On を <VirtualHost> の中だけに書いているのにこのエラーが出ていると言うことですか?
mercurius51

2019/05/24 15:58

ご回答ありがとうございます。 上記はいったん解決し、別のところで問題が起きたためこちらはCloseさせていただきます。 原因としては2つあったコンフィグファイルのうちの一つに`<Virtualhost>`外のSSL設定があったことでした。 その定義を作成したことを忘れており、気づいていなかったものになります。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問