【Linux】CentOS 7 nginx 1.18.x をインストールする

1. 事前に準備する

仮想マシンのダウンロードとインストールについては、以前のブログを参照してください↓
VMwareのダウンロード、インストール、仮想マシンの作成
VMwareのインストール Centos7究極のステップバイステップ詳細グラフィックプロセス

nginx ソース コード パッケージのダウンロードもあります:
公式 Web サイトの最新バージョンは1.19.6で、最新の安定バージョンは1.18.0です。ここでは安定バージョンを選択します:
ダウンロード アドレス: nginx: ダウンロード (公式 Web サイト) )
ダウンロードリンク: nginx-1.18.0
ここに画像の説明を挿入します
もちろん、wget を使用して Linux に直接ダウンロードすることもできます。

wget http://nginx.org/download/nginx-1.18.0.tar.gz

2. インストールを開始します

  1. インストール環境に依存
    ここには多くの依存環境があり、次の 4 つをインストールする必要があります。

初め: gcc の環境
C 言語コードをインストールします。コンパイル環境は通常、gcc を使用して直接完成します。たとえば、redis についても同様です。インストール コマンドは次のとおりです。

yum install gcc-c++

make コンパイルの失敗に関する問題がある場合:
以前redisをインストールした際、makeコマンドでコンパイルする際にエラーが発生しましたが、調べてみると、インストールされているredisのバージョンが高く、gcc環境のcent osのバージョンが低いことが原因でした。コンパイルが成功する前にバージョンがアップグレードされました。ここではすでにアップグレードしているので、非常に長いアップグレード コマンドを次に示します。

yum -y install centos-release-scl && yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils && scl enable devtoolset-9 bash

最後のscl enable devtoolset-9 bashコマンドは gcc バージョンを切り替えますが、この切り替えは一時的なものです。Linux システムを再起動して gcc バージョンを確認すると、バージョン 4.8.5 (CentOS 7 のデフォルト バージョン) に戻ります。次のコマンドを使用して gcc バージョンを切り替えます。

echo "source /opt/rh/devtoolset-9/enable" >> /etc/profile

実際、これはプロファイルファイルにコマンドを追加することを意味します: source /opt/rh/devtoolset-9/enable
最後に、gcc -vコマンドを使用して現在の gcc バージョンを確認します。
ここに画像の説明を挿入します

二番目: PCRE をインストールするための環境
PCRE (Perl Compatible Regular Expressions) は、Perl 互換の正規表現ライブラリを含む Perl ライブラリです。nginx の http モジュールは正規表現の解析に pcre を使用するため、Linux には pcre ライブラリをインストールする必要があります。
注: pcre-devel は、pcre を使用して開発された二次開発ライブラリです。nginx にもこのライブラリが必要です。

インストールコマンドは以下のとおりです。

yum install -y pcre pcre-devel

ここに画像の説明を挿入します

第3: zlib をインストールするための環境。zlib
ライブラリには多くの圧縮および解凍方法が用意されています。nginx は zlib を使用して http パッケージの内容を gzip (圧縮) するため、Linux には zlib ライブラリをインストールする必要があります。
zlib-develについても同様です。

インストールコマンドは以下のとおりです。

yum install -y zlib zlib-devel

ここに画像の説明を挿入します

第4: OpenSSL をインストールするための環境
OpenSSLは、主要な暗号化アルゴリズム、一般的に使用されるキーと証明書のカプセル化管理機能、および SSL プロトコルを含む強力な Secure Sockets Layer 暗号化ライブラリであり、テストやその他の目的のための豊富なアプリケーションを提供します。nginx は http プロトコルをサポートするだけでなく、https (つまり、SSL プロトコルを介して http を送信する) もサポートするため、Linux に openssl ライブラリをインストールする必要があります。
openssl-devel は同じ理由で引き続き使用できます。

インストールコマンドは以下のとおりです。

yum install -y openssl openssl-devel

ここに画像の説明を挿入します

  1. ファイルを解凍する
    コマンドを使用します:
tar -zxvf nginx-1.18.0.tar.gz

解凍ディレクトリを指定しない場合は、デフォルトで現在のディレクトリに解凍されます: nginx-1.18.0
コマンドの最後に -C とパスを使用して解凍ディレクトリを指定することもできます。
ここに画像の説明を挿入します

  1. コンパイルしてインストールする
    まず、以前に解凍したディレクトリnginx-1.18.0に入ります。
    ここに画像の説明を挿入します
    このディレクトリには実行可能プログラムがあります: configure.
    このプログラムを使用して、最初にインストール構成ファイルを作成します: makeFile .では、makeFile ファイルとは何ですか?

Makefile は構成ファイルです。Makefile プロジェクト内のソース ファイルはカウントされません。ソース ファイルは、タイプ、機能、モジュールに応じていくつかのディレクトリに配置されます。Makefile は、どのファイルを最初にコンパイルする必要があるか、どのファイルをコンパイルする必要があるかを指定する一連のルールを定義します。ファイル ポストコンパイルが必要で、どのファイルを再コンパイルする必要があります。メイクファイルはシェル スクリプトに似ており、オペレーティング システム コマンドも実行できるため、さらに複雑な機能操作を実行できます。

makeFile をビルドするための最も簡潔なコマンドは次のとおりです。

./configure

ただし、ここではこの単純なものは使用しません。このコマンドの後にいくつかのパラメータ値を追加します。もちろん、次のように、パラメータ値なしのデフォルト値が使用されます。

./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi \
--with-pcre

対応するパラメータ値を指定する関数は次のとおりです。

パラメータ値 範囲
–prefix=/usr \ インストールディレクトリを指定する
–sbin-path=/usr/sbin/nginx \ プログラムファイル(nginx)を指定(実行)します。
–conf-path=/etc/nginx/nginx.conf \ 設定ファイルを指す
–エラーログパス=/var/log/nginx/error.log \ ログへのポイント
–http-log-path=/var/log/nginx/access.log \ http-log をポイントします
–pid-path=/var/run/nginx/nginx.pid \ pid へのポイント
–lock-path=/var/lock/nginx.lock \ インストール ファイルは、他人による使用や自分による悪用を防ぐためにロックされています。
–user=nginx \ 現在のユーザーを指す
–group=nginx \ 現在のユーザーグループを指します
–with-http_ssl_module \ ngx_http_ssl_module サポートを有効にする (https リクエストをサポートするには、openssl をインストールする必要があります)
–with-http_flv_module \ ngx_http_flv_module サポートを有効にする (メモリ使用量を求めるための時間ベースのオフセット ファイルを提供します)
–with-http_stub_status_module \ ngx_http_stub_status_module サポートを有効にする (最後の起動以降の nginx の動作ステータスを取得する)
–with-http_gzip_static_module \ ngx_http_gzip_static_module サポートを有効にする (オンラインのリアルタイム圧縮出力データ ストリーム)
–http-client-body-temp-path=/var/tmp/nginx/client \ httpクライアントリクエストの一時ファイルパスを設定します。
–http-proxy-temp-path=/var/tmp/nginx/proxy \ httpプロキシの一時ファイルのパスを設定する
–http-fastcgi-temp-path=/var/tmp/nginx/fcgi \ http fastcgi 一時ファイルのパスを設定します
–http-uwsgi-temp-path=/var/tmp/nginx/uwsgi \ http uwsgi 一時ファイルのパスを設定します
–http-scgi-temp-path=/var/tmp/nginx/scgi \ http scgi 一時ファイルのパスを設定します
–with-pcre pcre ライブラリを有効にする

ここに画像の説明を挿入します
OK、 makeFileファイルがビルドされました
ここに画像の説明を挿入します
下に来てコンパイルを開始し、次のコマンドを使用します。

make

ここに画像の説明を挿入します
成功したら、インストールを続行します。

make install

ここに画像の説明を挿入します
これは非常に高速で、すぐに完了します:
コンパイル ディレクトリと同じディレクトリに nginx という名前のフォルダが構築されます:
ここに画像の説明を挿入します
やめて、上に別のフォルダがあるため、ここに別のフォルダを作成する必要があると言いました。指定された一時ファイル ディレクトリmakeFile は /var/temp/nginx/client です。このディレクトリは /var の下に作成する必要があります (-p パラメータはサブディレクトリを作成するためのものです)。

mkdir /var/temp/nginx/client -p

これでnginxのインストールは完了です。次にテストを実施します。

3. テストと共通コマンド

Nginx ディレクトリの下の sbin ディレクトリに入ります。
ここに画像の説明を挿入します
その中には何もなく、実行可能プログラムがあるだけです。走ろう

./nginx

ここに画像の説明を挿入します
次のコマンドを使用してプロセスを表示できます。

ps aux|grep nginx

nginx のメイン プログラム マスターワーカー プログラムがそれぞれ 2 つのスレッド上にあることが判明しました:
ここに画像の説明を挿入します
ページを見てみましょう, そのエージェントは http が配置されている 80 ポートをリッスンするので、ここでは直接アクセスします:
ip + 80 ポート。実際には、ポートを入力する必要はありません。デフォルトの番号も 80 です。
ここに画像の説明を挿入します
最後に、いくつかの一般的なコマンドを追加します。

注文 効果
./nginx Nginxを起動する
./nginx -s リロード Nginxを再起動します(Nginx設定ファイルを更新します)
./nginx -s 停止 Nginxをシャットダウンする
./nginx -s 終了 Nginx をオフにする (推奨)

確かに、

kill -9 线程id

オフにすることもできます 0.0

おすすめ

転載: blog.csdn.net/cjl836735455/article/details/112132268