1.まず、nginx証明書なしのプロキシを実装し、ストリームモジュールを有効にする必要があります。Steamモジュールはnginx 1.9.0以降でのみサポートされます。ストリームモジュールは、4層プロトコルの転送、プロキシ、または負荷分散を実装するために使用されます。
2. nginx.cnfファイルを編集し、ファイルの最後にストリームモジュールの構成を追加し、ポートプロキシをリッスンしてさまざまなサーバーまたはドメイン名を転送します。
streamモジュールの使い方はhttpモジュールの使い方と似ていますが、構文がほとんど同じであることが重要です。
たとえば、次のとおりです。
stream {
server {
listen 0.0.0.0:443;
proxy_connect_timeout 20s;
proxy_timeout 6m;
proxy_pass sdk.xylink.com:443;
}
サーバー{
リッスン0.0.0.0:8443;
proxy_connect_timeout 20s;
proxy_timeout 6m;
proxy_pass sina.cn:443;
}
サーバー{
リッスン0.0.0.0:9443;
proxy_connect_timeout 20s;
proxy_timeout 6m;
proxy_pass qq.com:443;
}
}
3.この時点でクライアントがnginx IPにアクセスしてプロキシhttpsサーバーにアクセスすると、証明書が信頼されていないというプロンプトが表示されることにも注意してください。解決策は、nginx _ipドメイン名(ホスト名)解決をクライアントのhostsファイルに追加することです。クライアントは、nginxプロキシメソッドを入力する代わりに、ドメイン名アクセスメソッドを使用します。実際、SSL証明書にはドメイン名との強い結合関係があるからです。