LNMP を展開して HTTPS サービスを有効にする方法に関するチュートリアル

LNMP を展開して HTTPS サービスを有効にする方法に関するチュートリアル

LNMP とは: Linux+Nginx+Mysql+(php-fpm、php-mysql)

つまり、Linux オペレーティング システム上の Nginx + Mysql + Php の Web サイト サービス アーキテクチャです。

CentOS 6 の MySQL と CentOS 7 の MariaDB

役割: Web サービスを提供でき、PHP のようなアプリケーションを解析できる。

次に、LNMP アーキテクチャを使用して phpMyAdmin を展開します。

前提条件: すべての操作はホスト 172.16.75.1 で実行されます。

1. Webサーバーのドメイン名を設定します: www.sss.com

物理マシンの C ドライブにある windows/System32/drivers/etc/etc/hosts ファイルにレコードを追加します。

172.16.75.1 www.sss.com

2. 172.16.75.1 ホストに LNMP アーキテクチャを展開します。

[root@master ~]# yum install nginx mariadb php-fpm php-mysql

ここで、誰もがphp-fpmとphp-mysqlの機能は何なのかと尋ねるかもしれません。

NginxはWebサービスのみを提供し、PHPアプリケーションを解析することはできませんが、php-fpmは

また、PHP アプリケーションと Mariadb を接続するために php-mysql が使用されます。

3. 構成:

[root@master ~]# vim /etc/nginx/nginx.conf

[ルート@マスター]# nginx -t
nginx: 設定ファイル /etc/nginx/nginx.conf の構文は正常です
nginx: 設定ファイル /etc/nginx/nginx.conf のテストが成功しました

Nginx の設定が正しいことをテストし、サービスを開始します。

[root@master ~]# systemctl nginxを起動します

php-fpm サービスを開始します。

[root@master ~]# systemctl php-fpm を起動します

nginx.conf で定義されているリソースを保存するためのディレクトリを作成します。

[root@master ~]# mkdir -pv /myweb/nginx/

wordpress および phpMyAdmin パッケージはすでにこのディレクトリに配置されています。

まずphpMyAdminアプリケーション(データベースの管理に使用)をデプロイします。

解凍:

[root@master ~]# cd /myweb/nginx/
[root@master nginx]# tar -xf phpMyAdmin-3.5.4-all-languages.tar.gz 
[root@master nginx]# mv phpMyAdmin-3.5.4-すべての言語pma

/var/lib/php の下にディレクトリ セッションを作成します。

所有者は root、グループは apache、権限は 770 です。

[root@master ~]# cd /var/lib/php
[root@master php]# mkdir セッション
[root@master php]# chown root:apache session/
[root@master php]# chmod 770 session/

管理者のデータベース管理パスワードを設定します。

[root@master ~]# mysqladmin -p'' パスワード '111111'
パスワードを入力してください:

完了したら、Web 側でアクセス テストを実行します。


これでphpMyAdminのデプロイが完了します。

次に、phpMyAdmin に https サービスを提供します。

[root@master ~]# cd /etc/pki/CA/
[root@master CA]# (umask 077; openssl genrsa -out private/cakey.pem 2048)
[root@master CA]# openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 3653
[root@master CA]# index.txt をタッチします
[root@master CA]# echo 01 > シリアル
[root@master ssl]# (umask 077; openssl genrsa -out nginx.key 2048)
[root@master ssl]# openssl req -new -key nginx.key -out nginx.csr -days 3653
[root@master ssl]# openssl ca -in nginx.csr -out /etc/pki/CA/certs/nginx.crt -days 3653
/etc/pki/tls/openssl.cnf の設定を使用する
リクエストが署名と一致していることを確認する
署名OK
証明書の詳細:
  シリアル番号: 1 (0x1)
  有効
   以前: 2018 年 11 月 12 日 14:15:57 GMT
   それ以降: 2028年11月12日 14:15:57 GMT
  主題:
   国名 = CN
   州または省名 = 河北省
   組織名 = ジェームズ
   組織ユニット名 = james.edu
   共通名 = www.james.com
  X509v3 拡張:
   X509v3 基本制約: 
    CA:偽
   Netscape コメント: 
    OpenSSL 生成証明書
   X509v3 サブジェクトキー識別子: 
    5A:68:D6:47:29:DA:A5:29:98:09:0D:82:02:2D:B1:5D:61:8A:26:EC
   X509v3 権限キー識別子: 
    キーID:32:B2:8D:AC:68:57:FC:BF:8B:F2:CA:68:8B:45:93:D4:7F:A2:25:F3
    
  
[root@master ssl]# scp /etc/pki/CA/certs/nginx.crt ./
[root@master ssl]# rm -f nginx.csr

nginx 設定ファイルを変更します。

[root@master ssl]# vim /etc/nginx/nginx.conf

検出が正しかったら、nginx サービスを再起動します。

[ルート@マスターssl]# nginx -t
[root@master ssl]# nginx -s リロード

ウェブテスト:

https サービスの実装。

以下もご興味があるかもしれません:
  • LNMP シリーズチュートリアル: SSL インストール WordPress ブログ (プログラムのダウンロードとインストール)
  • LNMP を使用して VPS に WordPress をインストールするチュートリアル
  • Tencent Cloud ホストのインストール LNMP 環境と WordPress チュートリアル
  • Nginx サーバーにブログ プログラム Typecho をインストールして設定するチュートリアル
  • Nginx サービス LNMP WordPress 展開プロセスの手順

<<:  Vue-routerルーティングの使い方

>>:  Ubuntu での MySQL および MySQL Workbench のインストール チュートリアル

推薦する

ReactとReduxの関係を詳しく説明

目次1. reduxとreactの関係2. Reactのマルチコンポーネント共有3. reduxの3...

MySqlはページクエリ機能を実装します

まず、ページ分割クエリを使用する理由を明確にする必要があります。データが膨大なため、すべてのデータを...

フロントエンドとバックエンドを分離した nginx 構成を展開するための完全な手順

序文決まり文句です。ここでは、フロントエンドとバックエンドの分離についての私の理解についてお話ししま...

Spring jdbc のデータベース操作オブジェクト モデルの詳細な例

Spring jdbc のデータベース操作オブジェクト モデルの詳細な例Spring Jdbc デー...

Vue.js ソースコード解析のカスタム手順の詳細な説明

序文コア機能のデフォルトの組み込みディレクティブ (v-model および v-show) に加えて...

docker 環境でのデータベース バックアップ (postgresql、mysql) のサンプル コード

目次posgresql バックアップ/リストアMySQL バックアップ/復元posgresql バッ...

MySQLはinit-connectを使用してアクセス監査機能の実装を増やします

まず init-connect を通じて mysql 接続を初期化し、次にインスタンスに接続する必要...

MySQL監視グループレプリケーションについて簡単に説明します

元のテキスト: https://dev.mysql.com/doc/refman/8.0/en/gr...

Vue+canvas は、ウォーターフォール チャートを上から下までリアルタイムに更新する効果を実現します (QT と同様)

早速ですが、デモ画像をご紹介します。実装されている機能は、左側に凡例、右側にウォーターフォール チャ...

MySQLのkillがスレッドをkillできない理由

目次背景問題の説明原因分析シミュレーションする総括する背景日常の使用において、MySQL で個別また...

Windows 10 Home Edition に Docker をインストールする方法

最近、プロジェクトをアップグレードするために Docker を使用しました。これまで使用したことがな...

Linux Tensorflow2.0のインストール問題を解決する

conda アップデート conda pip で tf-nightly-gpu-2.0-previ...

ウェブデザインの初心者に役立つ学習教材をいくつかお勧めします

勉強中に読んだ本についてもよく聞かれます。以下は初心者におすすめの本です(私が勉強中に読んだ本です。...

vue+element カスタムクエリコンポーネント

この記事では主に Vue プロジェクトを紹介します。要素の導入を前提として、コンポーネントを 2 回...