Rocky Linux8にLEMPスタックをインストールする方法

用語 LEMP の頭字語です Linux、 Nginx、 MariaDBまたは MySQLと PHP。 このソフトウェアのグループは、PHPで記述されたWebアプリケーションを開発およびデプロイするために使用されます。

LEMPスタックの場合-NgnixはWebサーバーとして機能し、MariaDBまたはMySQLはWebサイトのデータベースを提供し、PHPはPHPページの提供を支援し、Linuxはオペレーティングシステムを提供します。

WordPress、Joomla、Drupalなどの人気のあるCMSはLEMPスタックを使用します。 このスタックは、トラフィックが多くスケーラブルなWebサイトをホストするのに役立ちます。

このチュートリアルでは、 LEMPスタックをインストールします の上 Rocky Linux 8.4。 また、学ぶ Nginxサーバーブロックを構成する ドメインをホストします。

ステップ1:Nginxをインストールする

Nginxは、無料のオープンソースの高性能Webサーバーです。 LEMPスタックはNginxを使用してHTTPトラフィックを処理します。

まず、RockyLinuxで利用可能なすべてのパッケージを更新します。

$ sudo dnf upgrade

注:dnfupdateは非推奨のエイリアスです。

今、 Nginxをインストールします RockyLinuxで。

$ sudo dnf install nginx

Nginxがインストールされたら、Nginxサービスを開始します。

$ sudo systemctl start nginx

Nginxサービスのステータスを確認するには、次のように入力します。

$ sudo systemctl status nginx

ここで、起動時の開始時にNginxを有効にしてください。

$ sudo systemctl enable nginx

インストールされているNginxのバージョンを確認するには、次のように入力します。

$ nginx -v

出力:

nginx version: nginx/1.14.1

出力は、インストールしたことを示しています Nginx 1.14.1 バージョン。

ファイアウォールでHTTPおよびHTTPSトラフィックを許可するため(WebサーバーをSSLで暗号化する場合)。

$ sudo firewall-cmd --permanent --zone=public --add-service=http
$ sudo firewall-cmd --permanent --zone=public --add-service=https

変更を有効にするには、ファイアウォールサービスをリロードします。

$ sudo firewall-cmd --reload

現在のファイアウォール設定を一覧表示することで確認できます。

$ sudo firewall-cmd --permanent --list-all

ブラウズを開き、サーバーIPまたはドメイン名を入力して、RockyLinuxのNginxデフォルトページを表示します。 Rocky Linuxでは、デフォルトのNginxWebページは/ usr / share / nginx / htmlにあります。

RockyLinuxのNginxデフォルトWebページ

ステップ2:MariaDBをインストールする

MariaDBデータベースは、OracleのMySQLのフォークです。 MariaDBは、MySQLよりもパフォーマンスが向上し、より優れたストレージエンジンを提供します。 ここでは、MariaDBをインストールして、Webサイトのデータを保存します。

MariaDBをインストールします Rocky Linuxでは、次のように入力します。

$ sudo dnf install mariadb-server mariadb

MariaDBサービスを開始するには、次のように入力します。

$ sudo systemctl start mariadb

次に、MariaDBのステータスを確認します。

$ sudo systemctl status mariadb

MariaDBが稼働しているはずです。 システム起動時にMariaDBを有効にするには、次のように入力します

$ sudo systemctl enable mariadb

MariaDBの新規インストールは安全ではありません。 MariaDBパッケージには、データベースサーバーのセキュリティを向上させるのに役立つスクリプトがプリインストールされています。

スクリプトを開始するには、次のように入力します。

$ sudo mysql_secure_installation

MariaDBが新しいルートパスワードを設定しました
安全なMariaDB

MariaDBの新規インストールでは、rootパスワードが空白になっています。 このスクリプトを使用すると、新しいrootパスワードを設定したり、匿名ユーザーを削除したり、rootリモートログインを禁止したり、テストデータベースを削除したりできます。

これで、設定したルートパスワードを使用してMariaDBサーバーにログインできます。

$ sudo mysql -u root -p

出力:

Enter password:
Welcome to the MariaDB monitor. Commands end with ; or g.
Your MariaDB connection id is 16
Server version: 10.3.28-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
MariaDB [(none)]>

出力は、MariaDB 10.3バージョンをインストールし、データベース操作を管理するためのシェルを取得したことを示しています。

ステップ3:PHPをインストールする

PHPは主に、Webサーバーの動的コンテンツを生成するために使用されます。 Rocky Linux 8 AppStreamには、このチュートリアルの執筆時点でPHPバージョン7.2、7.3、および7.4が付属しています。 デフォルトのバージョンはPHP7.2です。 最新バージョンのPHPをインストールするには、無料のRemiリポジトリを有効にします。

利用可能なPHPバージョンを一覧表示するには:

$ sudo dnf module list php

出力:

Last metadata expiration check: 2:57:54 ago on Fri 06 Aug 2021 02:16:31 AM UTC.
Rocky Linux 8 - AppStream
Name Stream Profiles Summary
php 7.2 [d] common [d], devel, minimal PHP scripting language
php 7.3 common [d], devel, minimal PHP scripting language
php 7.4 common [d], devel, minimal PHP scripting language
Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

PHP 7.4モジュールを有効にするには、次のように入力します。

$ sudo dnf module enable php:7.4

Nginxには、パフォーマンスを向上させるためにPHPとWebサーバー間のインタープリターであるPHP-FPM(PHP fastCGIプロセスマネージャー)が必要です。 今、私たちはできます PHPをインストールするPHP-FPM、および最も一般的なPHP拡張機能。

$ sudo dnf install php php-fpm php-cli php-gd php-curl php-zip php-mbstring php-opcache php-intl php-mysqlnd

確認するには、PHPのバージョンを確認してください。

$ php -v

出力:

PHP 7.4.6 (cli) (built: May 12 2020 08:09:15) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.6, Copyright (c), by Zend Technologies

出力から、PHP7.4バージョンがインストールされていることがわかります。

PHP-FPMを使用してPHPを実行するようにNginxを構成する方法を確認しましょう。

このために、/ etc / php-fpm.d /www.confのPHP-FPM構成にいくつかの変更を加える必要があります。

PHP-FPM構成ファイルをお気に入りのエディターで開きます。

$ sudo vi /etc/php-fpm.d/www.conf

2つの変数を変更します usergroup アパッチから nginx

user = nginx
group = nginx

次に、PHP-FPMを起動し、次のように入力します。

$ sudo systemctl start php-fpm

システムの再起動時にPHP-FPMを有効にし、次のように入力します。

$ sudo systemctl enable php-fpm

これで、ステータスを確認できます。次のように入力します。

$ sudo systemctl status php-fpm

PHP-FPMサービスステータス

最後に、Ngnixを再起動して、php-fpmによって行われた構成の変更をロードします。

$ sudo systemctl restart nginx

これで、デフォルトのwebrootディレクトリにinfo.phpスクリプトを追加することで、PHP、拡張機能、FPMを確認できます。

$ sudo vi /usr/share/nginx/html/info.php

以下のコンテンツをinfo.phpファイルに追加します。

<?php

phpinfo();

?>

Nginxを再起動して、変更を有効にします

$ sudo systemctl restart nginx

ブラウザを開き、ドメイン名またはサーバーIPにアクセスしてからinfo.phpにアクセスします。

https://server-ip-or-domain-name.com/info.php

php.infoページ

外の世界にPHP情報を見せたくないので、確認後にphp.infoページを削除することをお勧めします。

これで、Rocky Linux8へのLEMPスタックのインストールが完了しました。Nginxサーバーブロックをホストするように構成する方法も確認しましょう。 example Webサイト。

ステップ4:RockyLinuxでNginxサーバーブロックを構成する

Nginxでは、サーバーブロックが特定のドメインの設定を定義します。 各Webサイトには、Webサイトファイルを含むドキュメントルートが必要です。 ドキュメントルートは、どこにでも作成できます。

名前の付いたWebサイトのドキュメントルートを作成します example/ var / www /の.comexample.com / public_html。

まず、ドキュメントのルートディレクトリを作成し、次のように入力します。

$ sudo mkdir -p /var/www/example.com/public_html

ドキュメントルート内にindex.htmlファイルを作成し、以下の基本的なHTMLコンテンツを追加します。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Welcome</title>
</head>
<body>
<h1>Congrats! The example.com website is working</h1>
</body>
</html>

ドキュメントルートディレクトリとその中のすべてのファイルの所有権をNginxユーザー(www-data)に変更します。

$ sudo chown -R nginx: /var/www/example.com

次に、デフォルトで次の場所にあるNginxサーバーブロックを作成しましょう。 /etc/nginx/conf.d ディレクトリ。 お気に入りのエディターを使用して、サーバーブロックファイルを作成します。

$ sudo vi /etc/nginx/conf.d/example.com.conf

作成したファイルに以下の内容を追加し、置換 exampleドメイン名を使用した.com。

server {
listen 80;

server_name example.com www.example.com;

root /var/www/example.com/public_html;

index index.html;

access_log /var/log/nginx/example.com.access.log;
error_log /var/log/nginx/example.com.error.log;
}

構文エラーがないかnginx構成を確認してください。

$ sudo nginx -t

出力:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

変更を有効にするには、Nginxサービスを再起動します。

$ sudo systemctl restart nginx

ブラウザを開き、http://に移動しますexample.comで、作成したWebページを確認できます。

example.comテストWebページ

結論

このチュートリアルでは、Rocky Linux 8にLEMPスタックをインストールする方法を学びました。また、ドメインのNginxサーバーブロックを構成する方法も学びました。

読んでくれてありがとう、下のコメントセクションであなたの提案を教えてください。