1

Web アプリケーションを非ルート パス ( http://example.com/ ではなく http://example.com/wiki/ ) から提供できるようにする必要あります。アプリケーションはリバース プロキシ (nginx) の背後にあります。これには少なくとも 2 つのアプローチがあることに気付きました。

  1. アプリにパス プレフィックスを認識させ、それを使用してすべての URL (3xx リダイレクトの Location ヘッダー、HTML ドキュメント内のリンク、Ajax 呼び出しのアドレス) を作成します。

  2. リバース プロキシでリクエストからプレフィックスを削除し (/wiki/index.html は /index.html になります)、そのようなリクエストをアプリに渡し、すべての HTML ドキュメントと Ajax 呼び出しで相対 URL を使用します (src="./static/foo .jpg", POST "./create-user". リダイレクトで返された Location ヘッダーを書き換えるようにリバース プロキシを構成します ('proxy_redirect' nginx ディレクティブ)。

どちらのアプローチが優れているか、またその理由は?

4

0 に答える 0