Nginx ドメイン名 SSL 証明書の構成 (Web サイトの http を https にアップグレード)

Nginx ドメイン名 SSL 証明書の構成 (Web サイトの http を https にアップグレード)

序文

HTTP と HTTPS

日常生活でよく使われる URL は、おおまかに次の 2 種類に分けられます。

1 つは http プロトコルに基づいています (例: http://www.baidu.com)。

1 つは https://www.baidu.com のような https プロトコルに基づいています。

現在、多くの Web サイトがセキュリティ上の理由から Web サイトのドメイン名アクセスを http から https にアップグレードしています。http と https の概念がわからない場合は、次の記事を読んでみてください: HTTP と HTTPS の違いは何ですか?

SSL証明書

では、http を https にアップグレードするにはどうすればよいでしょうか?

http を https にアップグレードする必要があり、まず SSL 証明書が必要です。 SSL は、学部の学位証明書のようなものだと考えてください。この学部の学位証明書があれば、自分が学部生であることを証明でき、学部生基準で採用に応募することができます。もちろん、証明書は異なる機関によって発行されることがあります。たとえば、清華大学の学部卒業証書と、普通の三流大学の学部卒業証書の価値は明らかに異なります。 SSL 証明書についても同様であり、発行機関も異なります。

構成

ドメイン名と SSL 証明書を取得したら、ドメイン名の URL を https にアップグレードできます。一般的な方法は、Nginx でドメイン名の SSL 証明書を構成することです。

具体的なプロセス

訪問を開始する

(1)以下では、自分のウェブサイトを使用して、個人ウェブサイトのSSL証明書を設定し、ウェブサイトをSSLにアップグレードします。

私は自分のウェブサイト (http://www.zyqok.cn/fj.jpg) の写真を訪問しました。これは http 訪問です。

ここに画像の説明を挿入

(2)その後、httpsアクセスに変更しましたが、アクセスできないことがわかりました。

ここに画像の説明を挿入

これから正式に開始し、ウェブサイトを https リクエスト アクセスに変更します。

サーバーにNginxをインストールする

まず、サーバーにNginx環境をインストールする必要があります。サーバーにすでにNginxがインストールされている場合は、この手順をスキップできます。Nginxがインストールされていない場合は、

SSL証明書を取得する

Alibaba Cloud からサーバーを購入したので、Alibaba からいくつかの無料の SSL 証明書が提供されます。以下は、Alibaba Cloud から SSL 証明書を取得するプロセスの説明です。
Alibaba Cloud の顧客でない場合は、この手順をスキップして、Baidu で「SSL 証明書」を検索し、関連メーカーから購入するか、Baidu で「無料の SSL 証明書」を検索してください。

(1)Alibaba Cloudにログインし、[SSL証明書]列を見つけてクリックします(この機能はすでに有効になっているため、場所が異なる場合がありますので、パネルに移動して自分で見つけてください)。

ここに画像の説明を挿入

(2)このパネルに到達したら、[証明書を購入]をクリックします。

ここに画像の説明を挿入

(3)無料モデルを選択して購入する

ここに画像の説明を挿入

(4)購入が完了すると、該当する記録がページに表示されるので、[証明書を申請]をクリックします。

ここに画像の説明を挿入

(5)次に、アップグレードしたいドメイン名を入力します。たとえば、個人のウェブサイトhttp://www.zyqok.cnをhttps://www.zyqok.cnにアップグレードしたいとします。
このとき、ドメイン名を zyqok.cn として入力し、その他の情報を入力して [次へ] をクリックすると、証明書が上記に送信され、レビュー ステータスが入力されます。

ここに画像の説明を挿入

(6)申請が承認されると、SSL証明書をダウンロードできるようになります。右下の[ダウンロード]をクリックします。

ここに画像の説明を挿入

(7)Nginxの後に[ダウンロード]を選択し続けます

ここに画像の説明を挿入

(8)ダウンロードが完了すると、SSL証明書の圧縮パッケージが取得できます。

ここに画像の説明を挿入

SSL証明書をサーバーにアップロードする

(1)まず証明書パッケージを解凍すると、次の2つのファイルが得られます。

ここに画像の説明を挿入

(2)FTPツールを使用してこれら2つのファイルをサーバーにアップロードし、Nginx設定ファイルと同じディレクトリに配置します。

ここに画像の説明を挿入

設定を変更して再起動します

(1)Nginx.conf設定ファイルを開き、ポート443と80のサーバー情報を次のように設定します。
詳細な手順については、Alibaba Cloudのドキュメント「Nginx/TengineサーバーへのSSL証明書のインストール」を参照してください。

# httpsへの直接アクセス 
 サーバ
 {
  	文字セット utf8;
	聞く 443;
	ルート /opt/local;
	サーバー名 www.zyqok.cn; 
	sslオン;
	ssl_証明書 3067072_zyqok.cn.pem;
	ssl_certificate_key 3067072_zyqok.cn.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 をオン;
	
 }
 
 # http から https へジャンプ
 サーバ 
 {
    聞く 80;
	サーバー名 zyqok.cn;
	^/(.*) https://www.zyqok.cn を永久に書き換えます。
 }

(2)青いボックスの内容は、ドメイン名とSSL証明書に関連するファイルであることに注意してください。

ここに画像の説明を挿入

(3)次にNginxサービスを再起動します。

nginxのsbinディレクトリに入り、次のコマンドを入力してnginxサービスを再起動します。

./nginx -s リロード

ここに画像の説明を挿入

(4)Alibaba Cloudサーバーの場合は、ポート80とポート443を開くことを忘れないでください。そうしないと、アクセスできなくなります。

設定方法がわからない場合は、こちらの記事を参照してください: Alibaba Cloud セキュリティルールの設定

ここに画像の説明を挿入

再度訪問

(1)https(ポート443)で直接アクセスすると、問題ないことが分かります。

ここに画像の説明を挿入

(2)その後http(ポート80)でアクセスすると自動的にhttpsにジャンプしますが、これも問題ありません。

ここに画像の説明を挿入

ここまでで、SSL 証明書を構成する方法を学習しました。読んでくれてありがとう!

以下もご興味があるかもしれません:
  • SSL モジュール構成を使用して HTTPS アクセスをサポートする nginx の詳細な説明
  • HTTPS アクセスを実現するための Nginx 構成 SSL 証明書の詳細な説明
  • nginx で SSL 証明書を設定して https サービスを実装する方法
  • SSL証明書を使用してnginxを構成し、httpsアクセスを実装する例
  • HTTPS ウェブサイトを展開するために SSL 証明書を使用して Nginx を構成する方法 (証明書の発行)
  • nginx ssl を設定して https アクセスを実装する手順 (初心者向け)
  • nginx 環境で SSL 暗号化を構成する (単一および双方向認証、部分的な https)
  • SSL モジュールを使用して nginx を HTTPS アクセスをサポートするように構成する方法
  • NginxはSSLを構成して、httpsのプロセス全体を実装します。

<<:  PythonはデータベースMySQLの解凍バージョンのインストール構成に接続し、問題が発生しました

>>:  JS 手ぶれ補正機能の実装と使用シナリオ

推薦する

nodejs + koa + typescript の統合と自動再起動に関する問題

目次バージョンノートプロジェクトを作成する依存関係をインストールするコンテンツの記入src/serv...

Web フォームの入力要素の高度な使用例 11 選

1. ボタンが押されたときに点線のボックスをキャンセルする<br />入力に属性値hid...

Web デザインの経験: 独善的な Web デザイナー

1. ゴミかクラシックか? Web テクノロジーは急速に更新されており、Web サイトのインターフェ...

DockerにRabbitMQをインストールする詳細な手順

目次1. 鏡を見つける2. RabbitMQイメージをダウンロードする3. RabbitMQコンテナ...

Vue-router プログラムナビゲーションの 2 つの実装コード

ページをナビゲートする2つの方法宣言型ナビゲーション: リンクをクリックしてナビゲーションを実現する...

MySQL データベースの文字化け問題の原因と解決策

序文データベースのデータを表示すると、文字化けした文字が表示されることがあります。実際、どのようなデ...

ブラウザのキャッシュを防ぐために、js または css の後に ?v= バージョン番号を追加します。

コードをコピーコードは次のとおりです。 <span style="font-size...

PC/Pad/Phoneデバイスに自動的に適応するCSSウェブページレスポンシブレイアウト

序文最近は、PC、iPad、携帯電話、スマートウォッチ、スマートテレビなど、さまざまなデバイスが存在...

Win10 VM 仮想マシンに Mac OS10.14 を完璧にインストールする (グラフィック チュートリアル)

最近、Apple の記者会見を見てとても興奮したので、Mac システムを体験して Apple の素晴...

Win7 での mysql5.5 インストール グラフィック チュートリアル

MySQL のインストールは比較的簡単なので、通常は次のステップに直接進み、注意が必要な点に集中する...

JavaScript で localStorage を使用する方法

.NET の世界に参入したい開発者であれば、何が可能なのかを知る必要があります。 .NET Fram...

フロントエンド開発に必須:推奨されるブラウザ互換性テストツール 12 選

フロントエンド開発者にとって、さまざまな主要ブラウザのさまざまなバージョンでコードが適切に動作するこ...

CSS 透明ボーダー背景クリップマジック

この記事では、CSSの透明な境界線の背景クリップの素晴らしい使い方を主に紹介し、みんなと共有し、自分...

XHTML 入門チュートリアル: フレーム タグの使用

<br />フレーム構造により、ブラウザの 1 ページに複数の Web ページを同時に表...

ウェブ開発者はIE7とIE8の共存を懸念している

今日、IE8 をインストールしました。ダウンロードするために Microsoft の Web サイト...