この記事では、主に Nginx ダイナミック DNS リバース プロキシを作成するいくつかの方法を詳しく紹介し、Nginx ダイナミック DNS リバース プロキシの 4 つの方法を詳しく紹介します。必要な方はこの記事を参照してください。更新が半月遅れてしまい、中国は本当に感動しました。
Nginx はデフォルトで DNS をキャッシュします。リバースプロキシを行うと、実際にはアクセスのターゲット IP になるため、ターゲット IP がキャッシュされると非常に面倒になります。
フェンネルという言葉の 4 つの書き方は広く知られていますが、Nginx ダイナミック DNS リバース プロキシにも N 通りの使い方があるとは思いませんでした。もちろん、それは主に使用する Nginx のバージョンに依存します。ダイナミック DNS を使用しないのが最善であると私は考えていますが、ビジネス ニーズに基づいて選択の余地はありません。
最初のフェンネルの書き方: NginxNginxでは、変数を設定することで国を救うことができます。もちろん、変数を介して負荷分散する方法はありません。もちろん、マシンが 1 台しかない場合 (実際にはビジネス シナリオではほとんど存在しません)、試してみることもできます:
server { ... resolver 127.0.0.1; set $backend "http://dynamic.example.com:80"; proxy_pass $backend; ... }
もちろん、Nginx は使いやすいわけではありません。Plus の強化版は、より優れた書き込みメソッドを提供し、サーバーでの書き込みをサポートしています:
server { ... resolver 127.0.0.1 valid=30s; proxy_pass http://upstream-sites; ... }
Tengine は、淘宝網の魔法を改造したものです。実際、私たちは Tengine が使われていることを知らなかったのでかなりイライラしました。設定は役に立ちませんでしたが、Tengine は動的ドメイン名解決を非常によくサポートしており、公式ドキュメントも非常に明確です。
upstream backend { dynamic_resolve fallback=stale fail_timeout=30s; server a.com; server b.com; } server { ... location / { proxy_pass http://backend; } }
もちろん、Luaスクリプトを使って実装したり、他の人のモジュールを使用したりすることもできますが、いじるのが怖いことを考えると、いじりたくないので、この解決策は採用しませんでした。
上記はこの記事の全内容です。その他の関連コンテンツについては、PHP 中国語 Web サイトをご覧ください。
関連する推奨事項:
Nginx リバースプロキシ WebSocket 構成例以上がNginx ダイナミック DNS リバース プロキシを作成するいくつかの方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。