nginx を使用して http を https に変換するサンプルコード

nginx を使用して http を https に変換するサンプルコード

最近、小さなプログラムを書いています。その小さなプログラムの公式ウェブサイトはhttpsを使用する必要があるため、ウェブサイトは以前はhttpを使用しており、Alibaba Cloudサービスを使用していました。そこで、Alibaba Cloudでsslサービスを購入しました。以下は設定プロセスです。

1. まず、Alibaba Cloud にアクセスして SSL を購入します。もちろん無料版もありますが、サポートされるドメイン名は 1 つだけで、同じドメイン名に対して購入できる証明書は 20 個だけです。各詳細サブドメインは 1 つのドメイン名としてカウントされます。

2. SSL 証明書を購入したら、証明書コンソールに移動します。この時点で、情報を入力して審査を待つ必要があります。通常は数分で審査に合格します。

3. 審査後、証明書をダウンロードする必要があります

4. 次に、サーバー上でキーと PEM を設定する必要があります。もちろん、ここではキーを自動的に生成することを選択します。必要に応じて、自分でキーを作成し、Alibaba Cloud の手順に従うこともできます。以下のように表示されます。

 サーバー{
  聞く 443;
  server_name ローカルホスト;
  sslオン;
  ルートhtml;
  インデックス index.html index.htm;
  ssl_証明書 cert/21.pem;
  ssl_certificate_key cert/21.key;
  ssl_session_timeout 5分;
  ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
  ssl_プロトコル TLSv1 TLSv1.1 TLSv1.2;
  ssl_prefer_server_ciphers をオン;
  位置 / {
   ルートhtml;
   インデックス index.html index.htm;
  }
 }

この時点では、nginx を急いで再起動しないでください。まず、nginx が ssl モジュールを追加したかどうかを確認してください。追加されていない場合は、再コンパイルする必要があります。まず、sudo apt-get install openssl libssl-dev を実行して ssl をインストールし、次に nginx ディレクトリに移動して次のステートメントを実行します。

./configure \
 --prefix=/usr/local/nginx \
 --pid-path=/var/run/nginx/nginx.pid \
 --lock-path=/var/lock/nginx.lock \
 --error-log-path=/var/log/nginx/error.log \
 --http-log-path=/var/log/nginx/access.log \
 --with-http_gzip_static_module \
 --http-client-body-temp-path=/var/temp/nginx/client \
 --http-proxy-temp-path=/var/temp/nginx/proxy \
 --http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
 --http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
 --http-scgi-temp-path=/var/temp/nginx/scgi \
 --add-module=/home/scp/fastdfs-nginx-module/src \
 --with-http_stub_status_module \
 --http_ssl_module を使用する

ステートメントを実行した後、make を実行してから make install を実行します。この時点で、nginx を再起動すると、Alibaba Cloud ポートを自分で設定する必要があるため、外部ネットワークにアクセスできない可能性があります。セキュリティ グループに移動して、ポート 443 のフィルタリングを追加する必要があります。ここでは Ubuntu システムを使用しており、ターミナルで ufw allow 443 を実行する必要があります。その後、呼び出しにアクセスできます。次に、ポート80のアクセスを443にジャンプする必要があります。

サーバー{
聞く 80;
サーバー名 www.domain.com;
^(.*) https://$server_name$1 を永久に書き換えます。
}

nginx を使用して http を https に変換するサンプルコードに関するこの記事はこれで終わりです。nginx の http から https への変換の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Nginx を使用して https ルートドメイン名への 301 リダイレクトを実装するためのサンプル コード
  • nginx で HSTS を有効にしてブラウザを HTTPS アクセスにリダイレクトする方法の詳細な説明
  • nginx ロードバランシングを介して https にリダイレクトする方法
  • NGINX が https から http にジャンプするためのソリューションの詳細な説明
  • PHPプログラマーが遊ぶLinuxシリーズNginx HTTPS詳細説明
  • nginx に https アクセスを強制する方法 (http が https にジャンプします)

<<:  シンプルなドラッグ効果を実現するjs

>>:  MySQL トランザクション同時実行問題の解決

推薦する

LeetCode の SQL 実装 (196. 重複するメールボックスを削除する)

[LeetCode] 196.重複したメールを削除するSQL クエリを記述して、Person とい...

mysql は sql ファイルを実行し、エラーを報告します エラー: 不明なストレージ エンジン 'InnoDB' ソリューション

問題を見つける最近、仕事で問題が発生しました。InnoDB タイプの SQL ファイルを実行すると、...

Node.js ファイルのコピー、フォルダの作成、その他の関連操作

NodeJS は次のファイルをコピーします:通常、小さなファイルのコピー操作では、ストリーム パイプ...

Javascript ツリー メニュー (11 項目)

1. dhtmlxツリー dHTMLxTree は機能豊富なツリー メニュー コントロールです。豊...

Web デザインのための 5 つのシンプルな XHTML Web フォーム

Web デザイン 5 におけるシンプルな XHTML Web フォーム。 テクニック 1: ラベル ...

Dockerのローカルイメージ作成方法の分析

コンテナと呼ばれるものは、実際には親イメージに基づいて読み取りおよび書き込み可能なファイル階層を作成...

Nginx のアンチホットリンクを設定する方法

実験環境• 最小限のインストール済みの CentOS 7.3 仮想マシン• 構成: 1 コア/512...

UA による Web サイトのクロールを防ぐ Nginx のクローラー対策戦略

クローラー対策ポリシー ファイルを追加しました: vim /usr/www/server/nginx...

友達やグループを見つけるためのJavaScriptのLayim

現在、layuiの関係者はlayim友達検索ページの構造とスタイルを提供していません。私は個人的に非...

HTML ボディタグと HTML でよく使われる制御タグの詳細な説明

1. <body> タグ: Web ページの本体をマークするために使用されます。body...

ウェブページからテキスト透かしを削除する2つの簡単な方法

<br /> 特定の Web サイトを閲覧して、優れた Web ページを見つけた場合、そ...

初心者のための HTML コーディングガイドライン 30 選

1. HTMLタグは常に閉じる前のページのソース コードでは、次のような記述がよく見られます。 &l...

DockerでPrometheusをインストールする詳細なチュートリアル

目次1. Node Exporterをインストールする2. cAdvisorをインストールする3. ...

ウェブページ内の 2 つのボックス モデル (W3C ボックス モデル、IE ボックス モデル)

Web ページ ボックス モデルには 2 種類あります。 1: 標準 W3C ボックス モデル。2:...

テキストの両側に水平線を描くための CSS のサンプルコード

この記事では、テキスト中央の両側に水平線を引く効果を実現する CSS のサンプルコードを紹介し、皆さ...