非標準ポートから静的ウェブファイルを提供する

非標準ポートから静的ウェブファイルを提供する

私はもうすぐジャンゴプロジェクトを本番環境に移行しました。インフラストラクチャの決定を検討しています。静的ファイルを別のサーバーで提供するという案が浮上しました。ライト

ただし、最初は 1 台の専用サーバーから始めるため、静的ファイル Web サーバーに非標準ポートを使用するしか選択肢はありません。

  1. これには前例がありますか? つまり、「大きな」人がこれをやっているのでしょうか?

  2. 使用すべき、または使用を控えるべき特定のポートはありますか?

  3. この方法を取ることの欠点について誰か考えられますか?

答え1

異なる IP アドレスと TCP/80 を使用すると、同じアドレスと TCP/8080 などを使用する場合よりも、エンド ユーザーとの互換性が最大限に高まります。一部の非常に制限の厳しい企業ファイアウォールでは、TCP/8008 や TCP/8080 などの一般的なポートであっても、奇妙なポートへの接続が許可されません。それが問題にならない場合は、一般的な HTTP 代替ポートにバインドするだけで、目的の作業には十分です。

答え2

同じ Web サーバーに別の仮想ホストを設定し、「static.example.com」から静的コンテンツを提供するようにすれば、この変更は後で簡単に行えます。独自の方法で実行できますが、パフォーマンスの向上はあまり見込めません。次の方法を試してみてください。

  1. localhost:8080 に Django アプリケーションの仮想ホストを設定する
  2. 設定プロキシコアバックエンドとしてlocalhost:8080を使用する
  3. lighttpdでstatic.example.com仮想ホストを設定する

これには前例がありますか? つまり、「大きな」人がこれをやっているのでしょうか?

確かに、人々は異なるサーバーから静的コンテンツを配信しています。YouTube はそれを重視していると聞きました。

使用すべき、または使用を控えるべき特定のポートはありますか?

私は 80 以外のポートの使用は避けますが、それは私個人の意見です。:-)

この方法を取ることの欠点を誰か思いつきますか?

  1. 複雑であり、いずれにしても 1 つのアプリケーション サーバーのみを使用する場合は、メリットはほとんどありません。
  2. すべての Django ページはプロキシを通過する必要があります。
  3. ここで質問する必要があります。:-)

関連情報