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

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

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

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

Webサーバー

Webサーバーとは、HTTPリクエストに応じて、クライアントに情報を提供するシステムです。

リダイレクト

プログラムの入力元や出力先を通常とは別の場所に転送させることをリダイレクトと呼びます。

Q&A

解決済

2回答

2714閲覧

【Apache】ルート→別サーバー、サブディレクトリ→自サーバーで運用したい(リバースプロキシ含む)

t-ochi

総合スコア48

Apache

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

Webサーバー

Webサーバーとは、HTTPリクエストに応じて、クライアントに情報を提供するシステムです。

リダイレクト

プログラムの入力元や出力先を通常とは別の場所に転送させることをリダイレクトと呼びます。

0グッド

1クリップ

投稿2022/03/02 05:47

編集2022/03/02 10:31

お世話になります。

今回、Webサイトとサービスを同一サーバーで運用されているサーバーから、
Webサイトのみ、他の新規レンタルサーバーで改修したいと考えております。

【現状】
Webサイトはドキュメントルート。サービスはサブディレクトリでの運用。
サービスはサブディレクトリのまま、Webサイトのアクセスのみ、新サーバーに向かわせたいです。

サブディレクトリがWebサイトの時にリバースプロキシさせるものは
見つけたのですが、逆パターンが見つかられず、また、
サービスの特性上、停止させることができないサーバーのため質問させていただきました。

【構成】

Scientific Linux release 6.2 (Carbon)
Apache 2.2.15

・ドメイン:example.com
・web + メール
・リバースプロキシ(Apache)稼働
example.com/sub → sub.example.com/sub へリバースプロキシ
※今回のサービスとは別物です

【現状】

Webサイトとサービスを同一のサーバーで運用しています。

■ Webサイト
・URL https://example.com
・パス サーバーAの /var/www/html

■ サービス
・URL https://example.com/service/
・パス サーバーAの /var/www/html/service

【得たい結果】

Webサイトは新規契約のレンタルサーバ。
サービスは現状と同じサーバーで運用したい。

■ Webサイト
・URL https://example.com
・パス 新規レンタルサーバーの /home/user/public_html

■ サービス
・URL https://example.com/service/
・パス サーバーAの /var/www/html/service

【調べた内容】
VirtualHost内、リバースプロキシのON・OFFで可能なのかと思いました。

ssl.conf(現状)

1LoadModule ssl_module modules/mod_ssl.so 2 3Listen 443 4 5<VirtualHost IP:443> 6 7DocumentRoot "/var/www/html" 8ServerName example.com:443 9 10SSLProxyEngine On 11ProxyPass /service/ https://example.com/service/ 12ProxyPassReverse /service/ https://example.com/service/ 13 14</VirtualHost>

検討内容

ssl.conf(検討中)

1<VirtualHost IP:443> 2 <Directory "/var/www/html"> 3 SSLProxyEngine On 4 ProxyPass / レンタルサーバーの初期ドメイン 5 ProxyPassReverse / レンタルサーバーの初期ドメイン 6 </Directory> 7 8 <Directory "/var/www/html/sub"> 9 SSLProxyEngine On 10 ProxyPass /sub/ https://sub.example.com/sub/ 11 ProxyPassReverse /sub/ https://sub.example.com/sub/ 12 </Directory> 13 14 <Directory "/var/www/html/service"> 15 SSLProxyEngine Off 16 </Directory> 17</VirtualHost>

安直に考えすぎていないかと思い、質問いたしました。
ウェブサイト用に別のドメインを取得した方がシンプル or セオリーなど、
ございましたら、ご教示いただけると幸いです。

※同一ドメインでの運用が必須になりました

長文失礼しました。

よろしくお願いします。

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

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

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

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

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

guest

回答2

0

ベストアンサー

example.com の DNS Aレコードは既存サーバーのままで、ということですよね?

SSLProxyEngine On ProxyPass /service/ ! ProxyPass /sub/ https://sub.example.com/sub/ ProxyPassReverse /sub/ https://sub.example.com/sub/ ProxyPass / https://レンタルサーバーの初期ドメイン/ ProxyPassReverse / https://レンタルサーバーの初期ドメイン/

投稿2022/03/03 13:26

TaichiYanagiya

総合スコア12146

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

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

t-ochi

2022/03/03 15:36

!マークで、リバースプロキシを拒否することができるんですね。 こんなにシンプルに書けるのに驚きました。 見通しもイメージしやすいです。 Apacheの公式ドキュメントでの記載も見つけました。 https://httpd.apache.org/docs/2.4/ja/mod/mod_proxy.html 公式に目を通すことの重要性まで含めてありがとうございます!
t-ochi

2022/03/03 15:42 編集

今回、ご回答のシンプルさに加え、 公式ドキュメントに目を通す、強いきっかけをいただきましたので、 TaichiYanagiya 様の解答をベストアンサーにさせていただきました。 68user 様のご回答含め、 知らないことを教えていただいたり、公式を見ることで、 解法や選択肢が広がりました。 本当にありがとうございました!
guest

0

試してませんが、Alias /service /var/www/html/service を入れたらこっちが勝ちませんかね。

投稿2022/03/02 06:38

68user

総合スコア2005

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

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

t-ochi

2022/03/02 08:22

Aliasを使用する方法もあるんですね。 ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問