このガイドでは、ArchLinuxサーバーにLEMPスタックをインストールする方法を学習します。 LEMP は、Web開発者がWebサイトやアプリケーションをテストおよびホスティングするために使用する人気のあるスタックです。 LEMPは、Linux Nginxの略語です。 (エンジンXと発音) MariaDB / MySQL およびPHP 。 Nginxは、リバースプロキシとしても使用できる高性能で安定したWebサーバーです。トラフィックの多いサイトにサービスを提供するために人気があり、通常、本番サーバーではApacheよりも優先されます。 MariaDB / MySQLは、Webサイトデータを保存するためのオープンソースデータベースエンジンです。 MariaDBはMySQLのフォークであり、OracleによるMySQLの買収以来、ほとんどの場合好まれています。最後に、動的Webページの開発に使用されるサーバーサイドスクリプト言語であるPHPがあります。これらの各コンポーネントをインストールし、ArchLinuxでのインストールをテストします。
始めましょう!
ステップ1)NginxWebサーバーをインストールする
パッケージをインストールする前に、システムパッケージを更新することをお勧めします。したがって、次のコマンドを使用してArchパッケージを更新します。
$ sudo pacman -Syy
Nginxをインストールするには、次のコマンドを実行します:
$ sudo pacman -S nginx
インストールしたら、起動時にNginxを起動し、コマンドを実行してNginxサービスを開始できるようにします。
$ sudo systemctl enable nginx $ sudo systemctl start nginx
Nginxが実行されていることを確認するには、次のコマンドを実行します:
$ sudo systemctl status nginx
出力は、Nginxが稼働中であることを示しています。さらに、ブラウザを起動し、図のようにURLバーにサーバーのIPアドレスを入力することで、NginxWebサーバーが起動していることを確認できます。
http:// server-IP
インストールされているNginxのバージョンを確認するには、次のコマンドを実行します:
$ nginx -v
デフォルトでは、Nginxはポート80でリッスンします。これを確認するには、次のようにnetstatコマンドを使用します。
$ sudo netstat -plntu
ステップ2)MariaDBデータベースエンジンをインストールする
MariaDBデータベースエンジンをインストールするには、次のコマンドを実行します。
$ sudo pacman -S mariadb
インストールしたら、次に進み、MariaDBデータディレクトリを初期化し、以下に示すようにシステムテーブルを作成します。
$ sudo mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql
初期化が完了したら、図のようにMariaDBサービスを有効にして開始します
$ sudo systemctl enable mariadb $ sudo systemctl start mariadb
デフォルトでは、インストール時に、MariaDBデータベースエンジンにはrootユーザーのパスワードがありません。これにより、潜在的な違反の抜け穴が生じる可能性があります。これを防ぐには、データベースエンジンを保護し、その他の制限のリストを適用する必要があります。
したがって、rootユーザーに変更し、以下のコマンドを実行して、MariaDBの強化を開始します
$ mysql_secure_installation
これにより、一連のプロンプトが開始されます。まず、ルートパスワードを設定する必要があります 。最初に、rootアカウントが保護されており、自分の裁量で続行し、rootパスワードの変更を無視できることが通知されます。
パスワードを変更する必要があると思われる場合は、「 Y」をクリックしてください。 」をキーボードで入力し、強力なパスワードを入力して確認します。
プロンプトの残りの部分では、MariaDBデータベースエンジンに対していくつかの強化調整を実行する必要があります。これには、匿名ユーザーの削除が含まれます 、リモートルートログインの無効化 、テストデータベースの削除 最後に特権テーブルを再読み込みします Y と入力して、すべての人に「はい」と答える必要があります キー。
データベースインスタンスにログインするには、次のコマンドを実行します。
$ mysql -u root -p
「mysql_secure_installation」で設定したmysqlルートパスワードを入力します ”コマンド
ステップ3)PHPとPHP-FPMをインストールする
インストールするコンポーネントは、PHPもバンドルしているPHP-FPMです。 PHP FastCGI Process Managerの略語であるPHP-FPMは、Webサイトのパフォーマンスを高速化する便利なWebツールです。 Webサーバーに大量のネットワークトラフィックを同時に処理する機能を備えています。
PHP-FPMをインストールするには、次のコマンドを実行します。
$ sudo pacman -S php php-fpm
インストールが完了したら、起動時にPHP-FPMを有効にし、次のコマンドを実行してサービスを開始します。
$ sudo systemctl enable php-fpm $ sudo systemctl start php-fpm
次のコマンドを実行して、PHP-FPMが実行されていることを確認します。
$ sudo systemctl status php-fpm
PHP-FPMでNginxWebページを処理するには、いくつかの変更が必要です。 Nginx構成ファイルに向かいましょう
$ sudo vim /etc/nginx/nginx.conf
以下に示すように、オレンジ色で表示される変更を追加または追加します
location / { root /usr/share/nginx/html; index index.html index.htm index.php; } location ~ \.php$ { fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; fastcgi_index index.php; root /usr/share/nginx/html; include fastcgi.conf; }
ファイルを保存し、NginxとPHP-FPMの両方を再起動して、変更を有効にします。
$ sudo systemctl restart nginx $ sudo systemctl restart php-fpm
PHPが機能していること、およびPHP-FPMがグリッチなしでnginx Webページを提供できることを確認するには、/ usr / share / nginx /html/パスにinfo.phpファイルを作成します
$ sudo vim /usr/share/nginx/html/info.php
以下に示す行を追加して、ファイルを保存します。
<?php phpinfo(); ?>
ブラウザを起動し、図のようにサーバーのURLを参照します
http://server-ip/info.php
PHPのバージョンとさまざまなPHPモジュールに関する詳細情報を明確に表示するWebページが表示されます。
Webページから、最新バージョンのPHPであるPHP7.4.3がインストールされていることがはっきりとわかります。これは、ターミナルで以下のコマンドを実行することでも確認できます。
$ php -v
ステップ4)ufwファイアウォールを構成する
Arch Linux Webサーバーへの外部接続を許可するには、Webポート80と443を開く必要があります。ただし、最初にufwファイアウォールをインストールしましょう。
$ sudo pacman -S ufw
ファイアウォールを越えたポートを許可するには、次のコマンドを実行します。
$ sudo ufw allow 80/tcp $ sudo ufw allow 443/tcp
次に、ファイアウォールを有効にしてリロードし、変更を有効にします
$ sudo ufw enable
ファイアウォール実行のステータスを確認するには:
$ sudo ufw status
この時点で、LEMPスタックが正常にインストールされました。アドオンとして、MariaDB/MySQLデータベースの管理と管理を容易にするPHPフロントエンドユーティリティであるphpMyAdminのインストールについて説明します。 MySQL / MariaDBシェルでの作業が好きでない場合は、このツールを使用すると多くの猶予が得られます。
phpMyAdminをインストールするには、コマンドを実行します
$ sudo pacman -S phpmyadmin
次に、シンボリックリンクを作成してphpMyAdminへのアクセスを有効にします
$ sudo ln -s /usr/share/webapps/phpMyAdmin/ /usr/share/nginx/html/
最後に、変更を有効にするためにNginxとPHP-FPMサービスを再起動します。
$ sudo systemctl restart nginx $ sudo systemctl restart php-fpm
phpMyAdminフロントエンドにアクセスするには、次のようにURLを参照します
http:// server-ip / phpMyAdmin
ルートクレデンシャルを使用してログインすると、ダッシュボードが次のように表示されます
以上です! ArchLinuxにLEMPスタックが正常にインストールされました。私たちはあなたのフィードバックを大切にします。コメントやフィードバックに使用するために連絡してください。
また読む :ArchLinuxでSudoユーザーを作成および構成する方法