リバースプロキシサブロケーション

リバースプロキシサブロケーション

/imagesnginx が、/css、のすべてのリクエストを または/whateverにリダイレクト(書き換え?)するようにしたいのですhttp://frontend/site/imageshttp://frontend/site/css、はサイトのhttp://frontend/siteに正しくマッピングされていますが、もちろん ではなくを常に検索します。backend:port/whateverhttp://frontend/site/whatever

nginxリバースプロキシにURLを動的に適応させる方法はありますか?何百もの/locationディレクティブを作成せずに

ありがとう

答え1

site静的の場合:

rewrite ^(.*)$ /site/$1 break;

siteホスト名/ドメインの場合:

rewrite ^(.*)$ /$host$1 break;

rewriteブロック内でも使用できますserver:ngx_http_rewrite_モジュール



編集:
あなたのコメントの後、答えは逆転しました:

location /nasweb/ {
 rewrite ^/nasweb(/.*)$ $1 break;
 proxy_pass http://your-internal-nas;
}

https://your-external-domain.com/nasweb/これにより、リクエストを に転送できるようになりますhttp://your-internal-nas/

編集:
誤ったリダイレクトを防ぐには、以下を使用します。

proxy_redirect / /nasweb/;

関連情報