Nginxは、オープンソースの高性能ウェブサービスです r 。安定性、非常にシンプルな構成、豊富な機能セット、低リソース消費で知られています。
Nginxを使用すると、リバースプロキシ、ロードバランサー、HTTPキャッシュ、メールプロキシとして使用できます。
この投稿では、PHPサポート(PHP-FPMを介して)およびMariaDBサポートを使用してCentOS 8 /RHEL8にNginxをインストールする方法を示します。
PHP-FPMは、代替のPHPFastCGI実装です。あらゆる規模のサイト、特に忙しいサイトに役立つ追加機能があります。
Linuxのインストール
リンクをたどってLinuxオペレーティングシステムをインストールします
読む: CentOS 8のインストール方法(スクリーンショット付き)
読む: Red Hat Enterprise Linux 8のインストール方法(スクリーンショット付き)またはRHEL7からRHEL8にアップグレードする方法
これで、Linuxシステムの準備が整いました。次に、その上にNginx、MariaDB、PHP-FPMをインストールします。
この記事に記載されている手順は、RHEL8でRedHatサブスクリプションを有効にしている場合、またはシステムでローカルのyumリポジトリーを構成している場合にのみ機能します。rootユーザーとしてシステムにログインするか、rootユーザーに切り替えます。
$ su -
Nginxをインストール
ベースリポジトリを使用してNginxをインストールする
RHEL 8では、Nginxはrhel-8-for-x86_64-appstream-rpmsリポジトリで利用できます。したがって、Nginxリポジトリを手動で設定する必要はありません。
YUMコマンドを使用してNginxをインストールします。
yum -y install nginx
Nginxの公式リポジトリを使用してNginxをインストールする
Nginxリポジトリをシステムに追加します。
### CentOS 8 ### cat << EOF > /etc/yum.repos.d/nginx.repo [nginx-mainline] name=nginx mainline repo baseurl=http://nginx.org/packages/mainline/centos/8/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_signing.key EOF ### RHEL 8 ### cat << EOF > /etc/yum.repos.d/nginx.repo [nginx-mainline] name=nginx mainline repo baseurl=http://nginx.org/packages/mainline/rhel/8/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_signing.key EOF
AppStreamリポジトリを一時的に無効にして、Nginxの公式リポジトリからNginxをインストールします。
yum install -y nginx --disablerepo=* --enablerepo=nginx-mainline
インストール後にNginxWebサーバーサービスを開始します。
systemctl start nginx
以下のコマンドを使用して、ステータスNginxWebサーバーサービスを確認します。
systemctl status nginx
ファイアウォール
以下のコマンドを実行して、Webリクエストがファイアウォールを通過できるようにします。
firewall-cmd --permanent --add-service=http firewall-cmd --reload
SELinux
NginxログでSELinuxのエラーが発生した場合は、NginxのSELinuxポリシーを設定するためのチュートリアルがあります。
それ以外の場合は、次のコマンドを使用してSELinuxを一時的に無効にすることができます。ただし、SELinuxを永続的に無効にすることをお勧めします。
setenforce 0 sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
Nginxのインストールを確認する
Webブラウザーを開き、以下のURLにアクセスします。
http:// your-ip-addressRed HatリポジトリからインストールされたNginx:
次のページが表示されますRedHatEnterpriseLinuxでのnginxへようこそ 。このページでは、NgnixWebサーバーがサーバーに正常にインストールされていることを確認します。
Nginxの公式リポジトリを使用してNginxをインストールしました:
CentOS 8 /RHEL8でのNginxのデフォルトのドキュメントルートは/usr/ share / nginx /html/です。その他の設定ファイルは/etc/nginxディレクトリにあります。システムの起動時にNginxサービスを有効にします。
systemctl enable nginx
MariaDBのインストール
CentOS 8 /RHEL8にはMariaDB10.3が付属しています。 yumコマンドを使用してMariaDBサーバーをインストールします。
MariaDBコミュニティからMariaDBパッケージをインストールすることもできます。
読む :CentOS 8 /RHEL8にMariaDBをインストールする方法
yum -y install mariadb mariadb-server
次のコマンドを使用してMariaDBサーバーを起動します。
systemctl start mariadb
システムの起動中にMariaDBサービスが自動的に開始するようにします。
systemctl enable mariadb
MariaDBサーバーのインストールが完了したら、mysql_secure_installationコマンドを実行してMariaDBを保護します。
PHPのインストール
CentOS 8 /RHEL8にはPHP7.2が付属しています。 PHP-FPM(YUMコマンドを使用したFastCGI ProcessManager)を介してPHPをインストールします。
必要に応じて、Remiリポジトリを使用してPHP7.3をインストールできます。
読む: CentOS 8 /RHEL8にPHP7.3をインストールする方法
yum -y install php-fpm php-mysqlnd php-cli
/etc/php.iniを編集します。
vi /etc/php.ini
cgi.fix_pathinfoを0に設定します。
cgi.fix_pathinfo=0
/etc/php-fpm.d/www.confファイルを編集します。
vi /etc/php-fpm.d/www.conf
次の値がコメント化されていないことを確認してください。
[.More.] pm.min_spare_servers = 5 [.More.] pm.max_spare_servers = 35 [.More.]
リッスンパラメータを変更します。
FROM
listen = /run/php-fpm/www.sock
TO
listen = 127.0.0.1:9000
次に、PHP-FPMサービスを開始します。
systemctl start php-fpm
PHP-FPMサービスがシステムの起動時に自動的に開始されるようにします。
systemctl enable php-fpm
仮想ホストでPHP-FPMサポートを有効にする
次に、PHPをテストするための次の詳細について、Nginxサーバー上に仮想ホストを作成します。
サーバー名: web.itzgeek.local
ドキュメントルート: /usr/share/nginx/html/web.itzgeek.local
/etc/nginx/conf.dの下にweb.itzgeek.local.confという構成ファイルを作成し、編集します。
vi /etc/nginx/conf.d/web.itzgeek.local.conf
次のコンテンツを追加します。
server { server_name web.itzgeek.local; root /usr/share/nginx/html/web.itzgeek.local; location / { index index.html index.htm index.php; } location ~ \.php$ { include /etc/nginx/fastcgi_params; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } }
ドキュメントのルートディレクトリを作成します。
mkdir /usr/share/nginx/html/web.itzgeek.local
PHPをテストするために、作成した仮想ホストのドキュメントルートにPHPファイルを配置します。
echo "<?php phpinfo(); ?>" > /usr/share/nginx/html/web.itzgeek.local/index.php
サービスを再開します。
systemctl restart nginx systemctl restart php-fpm
LEMPスタックのテスト
/ etc / hosts(Linux)およびhostsファイル(Windows)にWebサーバードメイン(server.itzgeek.local)のホストエントリを作成します。
192.168.1.10 web.itzgeek.local
Webブラウザを開き、アドレスバーにドメインを入力します。
http://web.itzgeek.localページは次のようになります。
上のスクリーンショットから、PHPは期待どおりに機能しており、サーバーAPI行に示されているように、FPM/FastCGIを介して機能しています。
ページをさらに下にスクロールして、MariaDBサポートの詳細を確認できます。
興味深いトピック
セットアップ方法CentOS 8 /RHEL8でNginxを使用してSSLを暗号化しましょう
CentOS 8 /RHEL8にNginxを使用してWordPressをインストールする方法
CentOS 8 /RHEL8にNginxを使用してphpMyAdminをインストールする方法
結論
CentOS 8 /RHEL8にLEMPスタックをインストールする方法を学習しました。コメントセクションでフィードバックを共有してください。