CentOS 8 カスタム ディレクトリ インストール nginx (チュートリアルの詳細)

CentOS 8 カスタム ディレクトリ インストール nginx (チュートリアルの詳細)

1. ツールとライブラリをインストールする

# PCRE は、Perl 互換の正規表現ライブラリを含む Perl ライブラリです。 nginxのhttpモジュールはpcreを使用して正規表現を解析します

# zlib ライブラリは、圧縮および解凍のさまざまな方法を提供します。nginx は、zlib を使用して http パッケージの内容を gzip します。

yum -y インストール gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel

2. ディレクトリ構造

ソースコードディレクトリ: /home/werben/pkgsrc/nginx
インストールディレクトリ: /home/werben/application/nginx

3. ソースコードをダウンロードして解凍する

# 公式ウェブサイトアドレス: https://nginx.org/en/download.html
wget -c https://nginx.org/download/nginx-1.17.5.tar.gz

4. ユーザーグループとユーザーを作成する

グループ追加www
ユーザー追加 -g www www

5. ソースコードをコンパイルする

./configure --user=www --group=www --prefix=/home/werben/application/nginx --with-http_v2_module --with-http_ssl_module --with-http_sub_module --with-http_stub_status_module --with-http_gzip_static_module --with-http_flv_module --with-http_mp4_module --with-pcre

作成 && インストール

6. グローバルコマンドのマッピング

ln -s /home/werben/application/nginx/sbin/nginx /usr/local/bin/nginx

7. 開始、停止、再起動

nginx -s 停止
nginx -s 終了
ngins -s リロード

8. 設定ファイルnginx.confの正確性を確認する

nginx -t

9. 起動時に自動的に起動する

vim /lib/systemd/system/nginx.service
[ユニット]
説明=nginx
後=ネットワーク.ターゲット

[サービス]
タイプ=フォーク
実行開始=nginx
ExecReload=nginx のリロード
ExecStop=nginx 終了
プライベートTmp=true

[インストール]
WantedBy=マルチユーザー.ターゲット
#デーモンプロセスをリロードする systemctl daemon-reload

#nginx サービスを開始します systemctl start nginx.service
#nginx サービスを停止します systemctl stop nginx.service
#起動時にシステムが自動的に起動するように設定する systemctl enable nginx.service
#自動起動を停止する systemctl enable nginx.service
#サービスの現在のステータスを表示する systemctl status nginx.service
#サービスを再起動します systemctl restart nginx.service
#開始されているすべてのサービスを表示する systemctl list-units --type=service

10. 問題と解決策

#`systemctl start nginx.service` が次のエラーをプロンプト表示した場合: 制御プロセスがエラー コードで終了したため、nginx.service のジョブが失敗しました。
詳細については、「systemctl status nginx.service」および「journalctl -xe」を参照してください。

#systemctl status nginx.service を実行します
#次のエラーが発生した場合プロセス: 35783 ExecStart=...nginx/sbin/nginx(code=exitedstatus=203/EXEC)
  nginx.service: 制御プロセスが終了しました。コード = 終了、ステータス = 203
  systemd[1]: nginx.service: 結果 'exit-code' で失敗しました。
  localhost.localdomain systemd[1]: nginxの起動に失敗しました。


ジャーナルctl -xe

#systemdに実行アクセスを許可する必要があると思われる場合は>
  その場合は、これをバグとして報告する必要があります。
  このアクセスを許可するには、ローカル ポリシー モジュールを生成できます。
  次のコマンドを実行して、今のところこのアクセスを許可してください。
  # ausearch -c '(nginx)' --raw | Audit2allow -M my-nginx
  # semodule -X 300 -i my-nginx.pp


#解決策: setenforce 0
vim /etc/selinux/config
SELINUX=無効

ps: Nginx 設定ファイルの構造の説明

すべての Nginx 構成ファイルは /etc/nginx/ ディレクトリにあります。

Nginx の主な設定ファイルは /etc/nginx/nginx.conf です。

ドメインごとに個別の構成ファイルを作成すると、サーバーの保守が容易になります。

Nginx サーバー ブロック ファイルは .conf で終わる必要があり、/etc/nginx/conf.d ディレクトリに保存されます。サーバー ブロックは必要な数だけ作成できます。

標準的な命名規則に従うことをお勧めします。たとえば、ドメイン名がmydomain.comの場合、設定ファイルはmydomain.com.confという名前になります。

ドメイン サーバー ブロックで繰り返し可能な構成セクションを使用する場合は、これらのセクションをフラグメントにリファクタリングすることをお勧めします。

Nginx ログ ファイル (access.log および error.log) は、/var/log/nginx/ ディレクトリにあります。サーバー モジュールごとに異なるアクセス ログ ファイルとエラー ログ ファイルを用意することをお勧めします。

ドメイン ドキュメント ルートは任意の場所に設定できます。 Webroot の最も一般的な場所は次のとおりです。

/home/<ユーザー名>/<サイト名>
/var/www/<サイト名>
/var/www/html/<サイト名>
/opt/<サイト名>
nginx の共有フォルダ

要約する

上記は、centos8 のカスタム ディレクトリに nginx をインストールする方法について紹介したものです。お役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • Nginx インストールの詳細なチュートリアル
  • Centos に PHP7.4 と Nginx をインストールする方法
  • Centos8 に nginx をインストールするための詳細なチュートリアル (画像とテキスト)
  • LinuxにNginxをインストールする正しい手順
  • Centos7 に nginx をインストールした後、conf.d ディレクトリに default.conf ファイルがないために「Welcome to nginx on Fedora!」というエラーが表示される問題を解決します。
  • Centos7.3 Nginx をインストールして展開し、https を設定する方法
  • Linux に nginx をインストールする方法
  • Nginx インストール エラーの解決方法

<<:  MySQL InnoDB のロック機構の詳細な説明

>>:  Vue を使用した Amap アプリケーション開発のベスト プラクティス

推薦する

Windowsにmysql5.7をインストールする方法

まずmysqlの圧縮バージョンをダウンロードします。公式ダウンロードアドレスは123WORDPRES...

ページのキャッシュを防ぐソリューション

解決: <head> に次のコードを追加します。コードをコピーコードは次のとおりです。 ...

左右の幅を固定し、中央の幅を適応させたHTMLレイアウトのソリューションの詳細な説明

この記事では、次のように、誰にでも共有できる左右幅固定のミドルアダプティブ HTML レイアウトソリ...

XHTMLはHTMLのいくつかの廃止された要素を使用しなくなりました

CSS ウェブページレイアウトを行う場合、XHTML1.0 仕様に準拠する必要があることは誰もが知っ...

Dockerイメージ構築原理の分析(Dockerをインストールしなくてもイメージを構築できる)

イメージの構築は、DevOps プロセスにおいて非常に重要なプロセスです。一般的に、イメージの構築と...

一般的な JavaScript 文字列メソッド 28 個と使用方法のヒントのまとめ

目次序文1. 文字列の長さを取得する2. 文字列の指定された位置の値を取得する(1) charAt(...

Linux カーネルの探究: Kconfig の秘密

Linux 構成/ビルド システムがどのように機能するかを深く理解します。 Linux カーネル構成...

ローカルアイデアアクティベーションサーバーの構築に関する詳細なチュートリアル

序文ブロガーはアイデアIDEを使用しています。アイデア公式が最近サードパーティのアクティベーションサ...

Vue はクリックフリップ効果を実現します

参考までに、vueを使用してクリックフリップエフェクトを簡単に実装します。具体的な内容は次のとおりで...

Ubuntu 20.04 では、隠し録音ノイズ低減機能が有効になります (推奨)

最近、 Ubuntu 20.04でkazamを使用して録音しているときに、問題が見つかりました。シス...

Dockerイメージをパッケージ化し、リモートサーバーにプッシュしてk8sにデプロイする方法

目次1. Dockerファイル2. pom 構成3. イメージプッシュ4. k8s デプロイメント前...

VMware kali仮想マシン環境の設定方法

1|0 カーネルをコンパイルする(1)uname -rコマンドを実行してカーネルバージョンを表示しま...

【HTML要素】画像の埋め込み方法

img 要素を使用すると、HTML ドキュメントに画像を埋め込むことができます。画像を埋め込むには、...

MySQL テーブルを作成するためによく使用される SQL ステートメントの概要

最近、私はプロジェクトに取り組んでおり、背景を記述するために SQL ステートメントを使用する必要が...

CSSはラジオをクリックして2つの画像スタイルを切り替えますが、複数のラジオのうち1つだけをチェックできます。

クリックされたボタンには赤い画像スタイルを実装し、選択されていない他のボタンには灰色の画像スタイルを...