背景:
WeChat アプレットはプロジェクト開発で使用されますが、サーバー構成 URL は https である必要があるため、nginx の ssl モジュールは https アクセスをサポートするように構成する必要があります。つまり dmsdbj.com というドメイン名で Web サイトを作成するには、https://dmsdbj.com 経由でアクセスする必要があります。
ssl は英語で Secure Sockets Layer と呼ばれます。 SSL は、SSL プロトコルを使用してブラウザと Web サーバーの間に安全なチャネルを確立するデジタル証明書です。データ情報はクライアントとサーバーの間で安全に送信されます。
前提条件:
1 . SSL モジュールを設定するには、まず CA 証明書が必要です。CA 証明書は手動で発行することも、Alibaba Cloud で申請することもできます。私は Alibaba Cloud で証明書を申請しました。 (手動発行については記事下部のリンクをご参照ください)
2. ssl モジュールはデフォルトではインストールされていませんので、このモジュールを使用したい場合は、-with- を指定する必要があります。 nginx をコンパイルするときの http_ssl_module パラメータ。
Alibaba Cloud の ca 証明書の購入
操作手順:
1. ca 証明書をダウンロードします
1. Alibaba Cloud にログインし、「コンソール」-「製品とサービス」を選択し、「セキュリティ (クラウド シールド)」欄の「ca 証明書サービス (データ セキュリティ)」を選択します。
2. 購入した証明書の「ダウンロード」をクリックし、新しく開いたページで「nginx/tengine」を選択します。 nginx の証明書をダウンロードします。」
2. nginx 設定ファイルに証明書をインストールします
ファイルの説明: 1 . 証明書ファイル "証明書名.pem" には、コンテンツの 2 つのセクションが含まれています。コンテンツを削除しないでください。 2. 証明書システムによって作成された CSR の場合は、以下も含まれます。 証明書の秘密キー ファイル "証明書名.pem"。 (1) nginx設定ファイルがあるディレクトリにcertフォルダを作成し、ダウンロードしたファイルをすべてcertディレクトリにコピーします。証明書申請時にcsrファイルを自分で作成する場合は、対応するcsrファイルを入れてください。秘密キー ファイルを cert ディレクトリに作成し、その名前を「証明書名.key」にします;
(2) nginx インストール ディレクトリの conf ディレクトリにある nginx.conf ファイルを開き、次を見つけます:
# https server # #server { # listen 443; # server_name localhost; # ssl on; # ssl_certificate cert.pem; # ssl_certificate_key cert.key; # ssl_session_timeout 5m; # ssl_protocols sslv2 sslv3 tlsv1; # ssl_ciphers all:!adh:!export56:rc4+rsa:+high:+medium:+low:+sslv2:+exp; # ssl_prefer_server_ciphers on; # location / { # # #} #}
(3) これを次のように変更します (次の属性 ssl で始まる属性は証明書の構成に直接関連しています。実際の状況に基づいて他の属性をコピーまたは調整してください):
server { listen 443; server_name localhost; ssl on; root html; index index.html index.htm; ssl_certificate cert/证书名称.pem; ssl_certificate_key cert/证书名称.key; ssl_session_timeout 5m; ssl_ciphers ecdhe-rsa-aes128-gcm-sha256:ecdhe:ecdh:aes:high:!null:!anull:!md5:!adh:!rc4; ssl_protocols tlsv1 tlsv1.1 tlsv1.2; ssl_prefer_server_ciphers on; location / { root html; index index.html index.htm; } }
保存して終了します。
(4) nginx を再起動します。
nginx -s reload
(5) https 経由でサイトにアクセスし、サイト証明書のインストールと構成をテストします。ブラウザに https://dmsdbj.com と入力します。以下の図に示すように、構成が成功したことを示しています。
インストール プロセス中に発生した問題
エラー1:
nginx: [emerg ] /usr/local/nginx/conf/nginx.conf の不明なディレクティブ "ssl":151
解決策:
このエラーは 2 つの状況によって発生する可能性があります。
ケース 1: 構成ファイルの形式が正しくありません。
解決策の参照リンク:
ケース 2: ssl モジュールがインストールされていません
デフォルトの状況 ssl モジュールがインストールされていません。このモジュールを使用したい場合は、nginx のコンパイル時に --with-http_ssl_module パラメータを指定する必要があります。この状況でもエラーが発生します2.
解決策:
nginx には http_ssl_module モジュールがありません。コンパイルしてインストールするときは、 --with-http_ssl_module 構成を持ってくるだけですが、現在の状況では、nginx はすでにインストールされています。モジュールを追加する方法は実際には非常に簡単です。続きを読んでください: 注: 私の nginx インストール ディレクトリは /usr/local/nginx ディレクトリであり、ソース コード パッケージは /usr/local/src/nginx-1.3.6 ディレクトリにあります。
(1) ソース コード パッケージに切り替えます:
cd /root/nginx-1.13.6
(2) 設定情報:
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
(3) 設定が完了したら、make を実行してコンパイルします。 make install を実行しないでください。実行しないと、インストールが上書きされます。
mark
(4) 次に、元のインストール済み nginx をバックアップします。
cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
(5) nginx を停止します。通常のコマンド nginx -s stop
nginx -s stop
を使用します。 off そうでない場合は、プロセスを直接強制終了します。 ps aux | grep プロセス名を実行すると、プロセスが占有している PID 番号が表示されます。
ps aux|grep nginx
検出された pid を kill するだけです。kill -9 pid コマンドを使用してプロセスを終了します。次の 3 つのEveryone PID を続行する前に、まず root に対応する PID を強制終了する必要があります。
kill -9 10922 kill -9 28276 kill -9 28277 kill -9 28278
(6) 元の nginx をコンパイルしたばかりの nginx
cp ./objs/nginx /usr/local/nginx/sbin/
(7) で開始します nginx
nginx
(8) 次のコマンドを使用して、すでに参加しているかどうかを確認します成功しました。
nginx -v
エラー 2:
nginx: [emerg] "ssl" パラメータには /usr/local/nginx/conf/nginx.conf の ngx_http_ssl_module が必要です:148
エラー 3:
nginx を停止しています... nginx: [emerg] bio_new_file("/usr/local/nginx/conf/cert/214291778530222. pem") が失敗しました (ssl: エラー:02001002:システム ライブラリ:fopen:そのようなファイルまたはディレクトリはありません:fopen('/usr/local/nginx/conf/cert/214291778530222.pem','r') エラー:2006d080:bioルーチン:bio_new_file:そのようなファイルはありません) が失敗しました。強制終了を使用してください
以上がssl モジュールを使用して HTTPS アクセスをサポートするように nginx を設定する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

Nginxは、Webサイトのパフォーマンス、セキュリティ、およびスケーラビリティを改善するために使用できます。 1)逆プロキシおよびロードバランサーとして、Nginxはバックエンドサービスを最適化し、トラフィックを共有できます。 2)イベント駆動型および非同期アーキテクチャを通じて、nginxは高い並行接続を効率的に処理します。 3)構成ファイルでは、静的ファイルサービスやロードバランシングなどのルールの柔軟な定義を可能にします。 4)最適化の提案には、GZIP圧縮の有効化、キャッシュの使用、およびワーカープロセスの調整が含まれます。

Nginxunitは複数のプログラミング言語をサポートし、モジュラー設計を通じて実装されています。 1。言語モジュールの読み込み:構成ファイルに従って対応するモジュールをロードします。 2。アプリケーションの起動:呼び出し言語が実行されたときにアプリケーションコードを実行します。 3。リクエスト処理:リクエストをアプリケーションインスタンスに転送します。 4。応答返品:処理された応答をクライアントに返します。

NginxとApacheには独自の利点と短所があり、さまざまなシナリオに適しています。 1.Nginxは、高い並行性と低リソース消費シナリオに適しています。 2。Apacheは、複雑な構成とリッチモジュールが必要なシナリオに適しています。コア機能、パフォーマンスの違い、ベストプラクティスを比較することで、ニーズに最適なサーバーソフトウェアを選択するのに役立ちます。

質問:nginxを開始する方法は?回答:nginxスタートアップnginx検証nginxはnginxを開始しました他のスタートアップオプションを自動的に開始

nginxが開始されるかどうかを確認する方法:1。コマンドラインを使用します:SystemCTLステータスnginx(Linux/unix)、netstat -ano | FindStr 80(Windows); 2。ポート80が開いているかどうかを確認します。 3.システムログのnginx起動メッセージを確認します。 4. Nagios、Zabbix、Icingaなどのサードパーティツールを使用します。

NGINXサービスをシャットダウンするには、次の手順に従ってください。インストールタイプを決定します:Red Hat/Centos(SystemCtl Status Nginx)またはDebian/Ubuntu(Service Nginx Status)サービスを停止します:Red Hat/Centos(SystemCtl Stop Nginx)またはDebian/Ubuntu(Service Nginx Stop)無効自動起動(オプション):Debuntos/Centos/Centos/Centos/Centos/Centos (syst

Windowsでnginxを構成する方法は? nginxをインストールし、仮想ホスト構成を作成します。メイン構成ファイルを変更し、仮想ホスト構成を含めます。 nginxを起動またはリロードします。構成をテストし、Webサイトを表示します。 SSLを選択的に有効にし、SSL証明書を構成します。ファイアウォールを選択的に設定して、ポート80および443のトラフィックを許可します。

サーバーには、要求されたリソースにアクセスする許可がなく、NGINX 403エラーが発生します。ソリューションには以下が含まれます。ファイル許可を確認します。 .htaccess構成を確認してください。 nginx構成を確認してください。 SELINUXアクセス許可を構成します。ファイアウォールルールを確認してください。ブラウザの問題、サーバーの障害、その他の可能なエラーなど、他の原因をトラブルシューティングします。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

WebStorm Mac版
便利なJavaScript開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)
