Nginx SSL証明書設定エラーの解決策

Nginx SSL証明書設定エラーの解決策

1. はじめに

Web プロジェクトを Linux サーバーで公開する場合、SSL 証明書を構成する必要があることがあります。これは、Web サイトがより公式になることを意味します (笑)。証明書をダウンロードして nginx.conf を設定すると、再起動以外はすべて準備完了です。その結果、再起動したら、何かおかしなことが起こりました。

nginx: [emerg] 不明なディレクティブ ssl、これはエラー メッセージです

この SSL 証明書を構成するときに nginx の SSL モジュールを参照する必要がありますが、最初に Nginx をコンパイルしたときに SSL モジュールを一緒にコンパイルしなかったため、このエラーが発生しました。

2. エラー解決手順

インストール時に SSL がコンパイルされなかったため、nginx をアンインストールして再インストールする必要がありますか?いいえ、いいえ、元のベースに SSL モジュールを追加するだけです。

ステップ 1: nginx パッケージをダウンロードした解凍ディレクトリに移動します。私が書いたチュートリアルに従ってインストールした場合、解凍ディレクトリは「/usr/loacl/src/」になります。ほとんどのものはこのディレクトリにあるはずですが、これはすでに標準になっています。

ステップ 2: 解凍したディレクトリに入ったら、次のコマンドを順番に実行します。

コマンド 1、./configure --with-http_ssl_module //SSL モジュールを再度追加します

エラーが発生しない場合は、コマンド2を確認してください。

このエラーは、上記のコマンド (./configure: error: SSL module requires OpenSSL library.) を実行すると発生します。原因は OpenSSL が見つからないことです。別のものをインストールして、yum -y install openssl openssl-devel を実行します。

OpenSSL をインストールしたら、./configure を実行し、「コマンド 1」を実行します。

コマンド 2: make コマンドを実行しますが、make install は実行しないでください。make はコンパイルに使用され、make install はインストールに使用されるためです。そうしないと、nginx 全体が上書きされます。

コマンド 3。コマンドを実行すると、nginx 解凍ディレクトリの objs フォルダに追加の nginx ファイルがあることがわかります。これがプログラムの新しいバージョンです。まず、以前の nginx をバックアップし、新しいプログラムをコピーして以前のものを上書きします。

cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak

cp objs/nginx /usr/local/nginx/sbin/nginx

コマンド 4. 最後に、Nginx インストール ディレクトリに移動して、SSL モジュールが正常にインストールされたかどうかを確認します。 ./sbin/nginx -V を実行すると、次の図が表示されます。

3. 最後に、上記のような画面が表示されれば、Nginx に SSL モジュールが追加され、コンパイルされているので、今度は再起動しても OK です。

nginx を再起動すると、次のエラーが報告されます。

nginx エラー: [警告] 「ssl」ディレクティブは非推奨です。代わりに「listen ... ssl」ディレクティブを使用してください

443 ssl をリッスンするように ssl をオンに変更します。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Nginx での SSL 証明書のインストールと展開手順の概要
  • SSL を実装するために nginx を設定する方法の例
  • Nginx ドメイン名 SSL 証明書の構成 (Web サイトの http を https にアップグレード)
  • Nginx 構成 SSL および WSS 手順の紹介

<<:  MySQL で '%' を含むフィールドをクエリする方法の詳細な説明 (ESCAPE の使用法)

>>:  HTML テーブルタグチュートリアル (3): 幅と高さの属性 WIDTH、HEIGHT

推薦する

CentOS 8/RHEL 8 に Cockpit をインストールして使用する方法

Cockpit は、CentOS および RHEL システムで使用できる Web ベースのサーバー管...

Linux で Grafana をインストールし、InfluxDB モニタリングを追加する方法

Grafana をインストールします。公式 Web サイトでは、直接インストールできる Ubuntu...

MySQL 8.0.17 のインストールと使用方法のチュートリアル図

前面に書かれた過去および現在のプロジェクトで最も一般的に使用されているリレーショナル データベースは...

CentOS 7 で yum を使用して MySQL 5.7.20 をインストールする最も簡単な方法

CentOS7 のデフォルトのデータベースは mariadb ですが、mysql を使っている人も多...

写真とテキストによる MySQL 8.0.21 インストール チュートリアル

1. ダウンロードリンクをダウンロードするダウンロードをクリックします。Oracle アカウントにロ...

docker で php+nginx+swoole+mysql+redis 環境を構築する方法

オペレーティングシステム: Alibaba Cloud ESC インスタンス centos7.4ソフ...

Docker での Tomcat インストールの 404 問題の解決方法

tomcat の containerID を見つけて、tomacat ディレクトリに入ります。 [r...

4つのReactコンポーネントにおけるDOMスタイル設定の詳細な説明

1. インラインスタイル仮想DOMにインラインスタイルを追加するには、式を使用してスタイルオブジェク...

Linux で scp コマンドを使用してファイルをリモートでコピーする方法の詳細な説明

序文scp は secure copy の略です。scp は、Linux システムの ssh ログイ...

jQueryはアコーディオン効果を実装します

この記事では、アコーディオンを実装するためのjQueryの具体的なコードを参考までに紹介します。具体...

古い Vue プロジェクトに Vite サポートを追加する方法

1. はじめに会社のプロジェクトを引き継いで2年になります。今では毎回プロジェクトを起動するのに1分...

CSSレイアウトにおけるフローティング問題に対する4つの解決策の詳細な説明

1. 原因:サブボックスをフロートに設定した後の効果: 青いボックスをフロートに設定すると、標準のド...

IE7 互換モードで IE8 を有効にするコード

最も人気のあるタグはIE8ですブラウザベンダーはバージョンアップデートのリリースに躍起になっている一...

サブクエリ最適化における MySQL 選択の実装

以下のデモはMySQLバージョン5.7.27に基づいています。 1. MySQLサブクエリ最適化戦略...

node.js が大規模プロジェクトに適さない理由

目次序文1. アプリケーションコンポーネント2. アプリケーションの種類3. アプリケーションサービ...