前提条件
1. バックエンド サーバー: このチュートリアルでは、ローカルホストのポート 8080
# で実行されている Tomcat サーバーを使用します。 ## 注: - リクエストのプロキシを開始するときは、アプリケーション サーバーが起動していることを確認してください。
2.ssl 証明書: サーバー上で ssl 証明書を構成する必要もあります。 Let's encrypt の暗号化証明書を使用できます。ここで説明したプログラムを使用して証明書を取得できます。ただし、このチュートリアルでは、自己署名証明書を使用します。この証明書は、ターミナルから次のコマンドを実行して作成できます。$ openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/nginx/certs/cert.key -out /etc/nginx/certs/cert.crt
nginxのインストール
ubuntu
##nginxはデフォルトのubuntuリポジトリで利用できます。非常に簡単です。次のコマンドを使用してインストールします。
$ sudo apt-get update && sudo apt-get install nginx
次に、サービスを開始してスタートアップを有効にします。
# systemctl start nginx # systemctl enable nginx
次に、nginx のインストールを確認します。Web ブラウザを開いてシステムに入ることができます。デフォルトの nginx Web ページを取得するための URL として ip を使用すると、nginx が適切に動作していることが確認されます。
ssl を使用した nginx リバース プロキシの構成
これで、ssl を使用した nginx リバース プロキシを構成するために必要なものがすべて揃いました。次に、nginx で設定する必要があります。デフォルトの nginx 設定ファイル /etc/nginx/conf.d/default.conf.
を使用します。構成 、ファイルを開いて古いファイルの内容をすべて削除またはコメントアウトしてから、次のエントリをファイルに追加します。
vi /etc/nginx/conf.d/default.conf
server { listen 80; return 301 https://$host$request_uri; } server { listen 443; server_name linuxtechlab.com; ssl_certificate /etc/nginx/ssl/cert.crt; ssl_certificate_key /etc/nginx/ssl/cert.key; ssl on; ssl_session_cache builtin:1000 shared:ssl:10m; ssl_protocols tlsv1 tlsv1.1 tlsv1.2; ssl_ciphers high:!anull:!enull:!export:!camellia:!des:!md5:!psk:!rc4; ssl_prefer_server_ciphers on; access_log /var/log/nginx/access.log; location / { proxy_set_header host $host; proxy_set_header x-real-ip $remote_addr; proxy_set_header x-forwarded-for $proxy_add_x_forwarded_for; proxy_set_header x-forwarded-proto $scheme; proxy_pass http://localhost:8080; proxy_read_timeout 90; proxy_redirect http://localhost:8080 https://linuxtechlab.com; } }
セクション 1
server { listen 80; return 301 https://$host$request_uri; }
セクション 2
listen 443; server_name linuxtechlab.com; ssl_certificate /etc/nginx/ssl/cert.crt; ssl_certificate_key /etc/nginx/ssl/cert.key; ssl on; ssl_session_cache builtin:1000 shared:ssl:10m; ssl_protocols tlsv1 tlsv1.1 tlsv1.2; ssl_ciphers high:!anull:!enull:!export:!camellia:!des:!md5:!psk:!rc4; ssl_prefer_server_ciphers on;
セクション 3
location / { proxy_set_header host $host; proxy_set_header x-real-ip $remote_addr; proxy_set_header x-forwarded-for $proxy_add_x_forwarded_for; proxy_set_header x-forwarded-proto $scheme; proxy_pass http://localhost:8080; proxy_read_timeout 90; proxy_redirect http://localhost:8080 https://linuxtechlab.com; }
# nginx -t
# systemctl restart nginx
以上です。 , ssl nginx リバース プロキシの準備が整いました。ここでセットアップをテストするには、Web ブラウザを開いて URL を入力するだけです。これで、Apache Tomcat Web ページにリダイレクトされるはずです。
以上がSSLを使用してNginxリバースプロキシを構成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。