web-dev-qa-db-ja.com

サブディレクトリを持つApache VirtualHostプロキシ

現在、IISサーバーをプライマリWebサーバーとして使用しています。代わりにApacheサーバーを実装していますが、IISサーバーにアクセスできるようにする必要があります。通常、これは単純なことです。Apache2はこのサーバーにサブドメインをプロキシできるためです。

ただし、問題は次のとおりです。IISサーバーでdotnetChartingを使用しており、ライセンスはドメイン名に関連付けられています。dotnetChartingを機能させるには、別のライセンスが必要です。購入した。

私の質問は、Apache2がサブディレクトリをプロキシできるかどうかです。たとえば、「www.example.com/subdir」はIISサーバーをポイントできますか?不可能ではないようですが、これに対する解決策を見つけることができないようです。

13
SuperJer

承知しました。しかし、注意してください。多くのWebアプリケーションは、URLパスを変更できるように設計されていません。アプリケーションは現在サブディレクトリで使用されていますか?

# You'll probably want this to maintain the Host mapping in IIS
ProxyPreserveHost On
# Swap in the IP address or internal Host name of your IIS server:
ProxyPass /subdir/ http://192.0.2.100/subdir/

または、URLパスを変更する場合は、リソース(CSS、javascript、画像)の絶対パスのために、多くのアプリケーションでこれに問題があることに注意してください。

ProxyPass /subdir/ http://192.0.2.100/
ProxyPassReverse /subdir/ http://192.0.2.100/
19
Shane Madden

承知しました。

  1. Mod_proxy mod_proxy_httpを有効にする
  2. apache VHostに次の命令を設定します

    ProxyPass /subdir http://iis.server/.../
    ProxyPassReverse /subdir http://iis.server/.../
    

最後の「/」は必須です。

詳細: http://httpd.Apache.org/docs/2.2/mod/mod_proxy.html

2
NCH

最後の最後のスラッシュは必須ではありません。このように設定しました

ProxyPass /dir http://exmpale.com/dir/ 

ProxyPassReverse /dir http://exmpale.com/dir/ 

トップレベルは機能しましたが、メインレベルの下のサブディレクトリのeveyrythingは機能しませんでした。

私はこれに変更し、すべてが機能しました。

間違った情報をありがとう!!!

ProxyPass /dir http://exmpale.com/dir

ProxyPassReverse /dir http://exmpale.com/dir
0