プロキシサーバーを設定しようとしています。
proxy-server.com/app1 --> website1.com
proxy-server.com/app2 --> website2.com
- 実際のバックエンド アプリケーションへのリダイレクトは行われません。ユーザーに
proxy-server.com/app[1/2]
は URL のみが表示されます。 - すべての静的リソースは正常に読み込まれるはずです。たとえば、
/js/sample.js
app2のリソースはlocationからリクエストする必要があります。/app2/js/sample.js
- アクションを実行するとき(フォームを送信したり、app2で別のページに移動するなど)、リクエストが先頭に追加され
/app2
、正しいアドレスにプロキシされる必要があります。
http {
upstream webapp1 {
server website1.com:443;
}
upstream webapp2 {
server website2.com:443;
}
server {
listen 80;
listen 443 ssl;
server_name proxy-server.com;
# certificate section
location /app1 {
proxy_pass https://webapp1/;
proxy_set_header Host website1.com;
}
location /app2 {
proxy_pass https://webapp2/;
proxy_set_header Host website1.com;
}
}
}
if
構成ではポイント 1 のみを修正しますが、上記の他の 2 つのポイントの解決策を見つけるのに苦労しています。ステートメントやモジュールを避けるように努めるつもりですが、クリーンな解決策を探していますsub_filter
:)