私はホームサーバーでApacheを使用しており、主なアプリケーションの1つはOwnCloudです。したがって、インターネットからアクセスするにはURLを使用してください - >
https://my_host.no-ip.org/owncloud
同じサーバーで別のHTTPアプリケーションを使用しています。アプリケーションには独自のHTTPサーバーがあり、Apacheを使用しません。したがって、この時点では、8080および8081をHTTP / HTTPSポートとして使用します。問題は、2番目のアプリケーションにアクセスすることです。たとえば、ホテルにあるが(WiFiサービスを使用)、プロキシサーバーの背後にあるときです。これらのサーバーの90%はポート80と443のみをプロキシし、SOCSを含む他のポートはプロキシしません。私のISPは1つのIPアドレスしか提供していないため、2つの異なるIPアドレスへのアクセスを分割することはできません。だから私の質問は次のとおりです。 URLを使用して2番目のアプリにアクセスする方法はありますか?
https://my_host.no-ip.org
URLを介してowncloudにアクセスします。
https://my_host.no-ip.org/owncloud
どちらも標準ポート443にあります。この時点で、最初のURLはインターネットのどこかの他のWebサイトにリダイレクトされますが、これは私には必要ありません。
どんなアイデアがありますか?可能ですか?
ベストアンサー1
ポート8080と8081で2番目のApacheサーバーを実行し続ける場合は、次のいずれかを実行できます。
- 着信を転送するポート80の最初のサーバーにリバースプロキシを設定します
https://my_host.no-ip.org/owncloud
。 https://my_host.no-ip.org/owncloud
着信トラフィックに対して301転送を実行しますhttps://my_host.no-ip.org:8081/
。https://my_host.no-ip.org/owncloud
のURL書き換えを行いますhttps://my_host.no-ip.org:8081/owncloud
。
このオプションのうち#1を使用します。これを行う方法の詳細については、次のタイトルの記事を参照してください。Apache HTTPdをリバースプロキシ(mod_proxy)として設定する。
一般的なステップ
httpd.conf
ディレクトリ内のファイルを開きます<httpd_home>/conf
。次の
LoadModule
ディレクティブを見つけて、先頭の#
ディレクティブを削除してコメントを削除します。LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_http_module modules/mod_proxy_http.so
再ルーティングを有効にするには、httpd.confの下部に次の行を追加します。
ProxyPass /console http://localhost:8080/console ProxyPass /images http://localhost:8080/images ProxyPassreverse / http://localhost:8080/