https ウェブサイトを展開し、Nginx でアドレス書き換えを構成するための詳細な手順

https ウェブサイトを展開し、Nginx でアドレス書き換えを構成するための詳細な手順

Nginx は、高性能な Web サイト サーバーおよびリバース プロキシ サーバーであり、IMAP、POP3、SMTP などのメール プロキシ サーバーでもあります。nginx は、Web サイトを公開するための Web サイト サーバーとして使用したり、負荷分散を実現するためのリバース プロキシとして使用したりできます。この記事では、Nginx を使用して https Web サイトを展開し、centos6.9 環境でアドレス書き換えを構成する方法について説明します。

1.環境準備: Centos6.9ホスト1台、ファイアウォールとSelinuxをオフにする

依存パッケージをインストールします: yum -y install openssl-devel pcre-devel gcc

nginx ユーザーを作成します:

useradd -M -s /sbin/nologin nginx #Nginxユーザーのホームディレクトリを作成しません。対話型シェルはありません。
tar -xf nginx-1.8.0.tar.gz
nginx-1.8.0をインストールします
./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --with-http_stub_status_module 
 --http_ssl_module を使用する
(--with-http_ssl_module は、https ウェブサイトを展開するときにインストールする必要があるセキュリティ モジュールのインストールを指定します。/usr/local/nginx ディレクトリを事前に作成する必要はありません)
作成 && インストール
cd /usr/local/nginx
ls /usr/local/nginx 

conf #nginx 設定ファイルの保存 logs #サービス ログと PID ファイルの保存 html #Web サイトのページを保存 sbin #実行可能なメイン プログラム ディレクトリ

2. スタートアップ プログラムを /usr/sbin/ パスにリンクします。

ln -s /usr/local/nginx/sbin/nginx /usr/sbin/

nginx コマンド:

nginx # サービスを開始します nginx -s stop # サービスをシャットダウンします nginx -s reload # 設定ファイルを再読み込みします nginx -t # 設定ファイルをテストします nginx -v # バージョン情報を表示します nginx -V # コンパイルオプションを表示します

サービスを開始: nginx

IP 経由で Web サイトをテストし、正常にアクセスできるかどうかを確認します。次のページが表示された場合、Web サイトの構成が成功したことを意味します (現時点では、デフォルトの http ページは 1 つだけです)。

3. openssl を使用して証明書を生成し、https ウェブサイトを構成します。

/usr/local/nginx/conf をコピーします。

openssl genrsa -out my.key #RSAアルゴリズムの秘密鍵を生成する

openssl req -new -x509 -key my.key -out my.crt #公開鍵に相当するサブ署名証明書を生成する

証明書の場所を指定するには、nginx 構成ファイルを変更します。

vim /usr/local/nginx/conf/nginx.conf
……
サーバー{
 443 ssl を聴く;
 サーバー名 www.test.com;
 ssl_certificate my.crt; #証明書の場所を指定します。デフォルトでは、現在のディレクトリで検索されます。 ssl_certificate_key my.key; #秘密鍵の場所を指定します location / { 
  root /var/www/html; # 区別を容易にするために、http ウェブサイト パスとは別に、Web ページ ファイルのルート パスを指定します。index index.html;
  }
}

変更が完了したら、設定ファイルを再読み込みします: nginx -s reload

mkdir -p /var/www/html
echo "ssl テスト" >/var/www/html/index.html 

4. アクセス検証を実行します。

http アクセスの効果は次のとおりです。

https アクセスの効果は次のとおりです。

5. http アドレスの書き換えを設定して、クライアントが http にアクセスするときに自動的に https にジャンプするようにします。

vim /usr/local/nginx/conf/nginx.conf
……
 サーバー{
  聞く 80;
  サーバー名 www.test.com;
  rewrite ^(.*)$ https://${server_name}$1 permanent; #httpアクセス要求を受信したらhttpsにリダイレクトする
  位置 / {
   ルートhtml;
   インデックス index.html index.htm;
  }

変更が完了したら、構成ファイルを再ロードします。

nginx -s reload

6. 再度アクセスして確認します。

http プロトコル経由で Web ページにアクセスすると、自動的に https にジャンプします。

ドメイン名が解決されない場合は、ホストレコードを追加し、ドメイン名と IP の対応をホストファイルに記述してください。

要約する

以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。

以下もご興味があるかもしれません:
  • Nginx サーバーで Web クローラーをブロックおよび禁止する方法
  • Nginx リバース プロキシと負荷分散の実践
  • Django+uwsgi+Nginxのベストプラクティスをオンラインで詳細に解説
  • Nginx のパラメータをオンにして Web パフォーマンスを 3 倍向上させる方法
  • PHP を使用して Nginx ログのユーザーエージェント データをカウントする方法
  • CentOS7 のシステム サービスに Nginx を追加する方法
  • nginx を使用して同じドメイン名で複数の Vue プロジェクトをデプロイし、リバース プロキシを使用する方法
  • Nginx 設定ファイルの差異を監視し、電子メールアラートを送信する Python 実装例
  • nginx+php実行リクエストの動作原理の詳細な説明
  • 高並列処理 nginx サーバー向け Linux カーネル最適化構成の説明

<<:  JavaScriptにおけるこのポインティング問題の詳細な説明

>>:  Debian 9 システムに MySQL データベースをインストールする方法

推薦する

速度、読み込み、Web アプリケーションなどにおける div と table の違い。

1: 速度と読み込み方法の違いdivとtableの違いは速度ではなく、読み込み方法です。速度はネット...

Vue.jsのレンダリング関数の使い方の詳しい説明

Vue では、ほとんどの場合、テンプレートを使用して HTML を作成することを推奨しています。ただ...

デザイン: 意志の強いデザイナー

<br />長年の専門的なアートデザイン教育を通じて「美とは何か」を学びましたが、「美を...

XHTMLコードの一般的なアプリケーション問題をまとめる

<br />しばらくの間、多くの人が XHTML の使い方を知らないことに気付きました。...

面接で聞かれる可能性のあるCSSに関する質問

この記事は、100 回書かれ、質問された CSS の質問を記念するためのものです。聞く: CSS セ...

mysql 8.0.16 winx64.zip インストールと設定方法のグラフィックチュートリアル

この記事では、MySQL 8.0.16 winx64.zipのインストールと設定方法の具体的なコード...

ウェブページの背景色を制御する CSS コード

誰もが自分の Web ページの背景にふさわしい画像を見つけることに悩むことが多いと思います。これは事...

MySQLでストアドプロシージャをデバッグする最も簡単な方法

同僚から、一時テーブルを使用して変数データを挿入して表示する方法を教わったことがありますが、この方法...

MySQL データベースのバックアップをスケジュールするいくつかの方法 (包括的)

目次1. データをバックアップするためのmysqldumpコマンド2. 一般的なmysqldump操...

JSは星を消すケースを実現する

この記事の例では、星を消すためのJSの具体的なコードを参考までに共有しています。具体的な内容は次のと...

Vueは動的に生成されたコンポーネントをドラッグアンドドロップする要件を実装します

目次製品要件アイデア問題ライブラリ選択をドラッグコンポーネントを生成する方法コンポーネントを生成する...

Dockerリンクはコンテナの相互接続を実現します

目次1.1. IP経由のコンテナ間のネットワークアクセス1.2. コンテナ名またはコンテナIDによる...

MySQLデータをOracleに移行する正しい方法

mysql データベースには student テーブルがあり、その構造は次のとおりです。 Oracl...

2つのウェブサイトページ翻訳プラグインの共有

TranslateThis URL: http://translateth.is Google 翻訳...