Lighttpdは、シンプルさと高性能に重点を置いたオープンソースのWebサーバーです。これは、メモリ消費量が小さくて少ない軽量のWebサーバーですが、標準への準拠、セキュリティ、および柔軟性を維持しています。 Lighttpd WebサーバーはLLMPスタックの一部であり、Linux、Lighttpd、MySQL / MariaDB、およびPHP/PHP-FPMの略です。
このチュートリアルでは、Ubuntu20.04サーバーにLLMPスタックをインストールして構成する方法を示します。最新バージョンのUbuntu20.04サーバーにMariaDBデータベースサーバーとPHP-FPMを備えたLighttpdWebサーバーをインストールします。
前提条件
- Ubuntu20.04サーバー
- root権限
- Ubuntu /DebianServerの基本を理解する
何をしますか?
- LighttpdWebサーバーをインストールする
- MariaDBデータベースサーバーのインストールと構成
- PHP-FPMのインストールと構成
- LighttpdとPHP-FPMのセットアップ
- テスト
まず、LighttpdWebサーバーをUbuntu20.04サーバーにインストールします。 LighttpdパッケージはデフォルトでUbuntuリポジトリで利用可能であり、利用可能なすべてのリポジトリを更新し、以下のaptコマンドを使用してLighttpdをインストールします。
sudo apt update
sudo apt install lighttpd
すべてのインストールが完了したら、Lighttpdサービスを開始し、システムブートに追加します。
systemctl start lighttpd
systemctl enable lighttpd
Lighttpdサービスが稼働しています。次のコマンドを使用して確認してください。
systemctl status lighttpd
以下は、得られる結果です。
次に、HTTP、HTTPS、SSHサービスをufwファイアウォールに追加します。
sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https
以下のコマンドを使用して、ufwファイアウォールサービスを有効にします。
sudo ufw enable
' yと入力します 'ufwファイアウォールを有効にし、その結果、Ubuntuシステムでファイアウォールを有効にしました。
次に、Webブラウザを開き、アドレスバーにサーバーのIPアドレスを入力します。
http://10.3.3.40/
そして、Lighttpdのデフォルトのindex.htmlページが表示されます。
その結果、LighttpdWebサーバーがUbuntu20.04システムにインストールされました。
このステップでは、MySQLデータベースサーバーをインストールし、MySQLのデフォルトのrootユーザーを設定します。
以下のaptコマンドを使用してMySQLサーバーをインストールします。
sudo apt install mysql-server mysql-client
すべてのインストールが完了したら、MySQLサービスを開始し、システムブートに追加します。
systemctl start mysql
systemctl enable mysql
次に、以下のコマンドを使用してMySQLサービスを確認します。
systemctl status mysql
以下は、得られる結果です。
その結果、MySQLデータベースサーバーはUbuntuシステムで稼働しています。
次に、以下の「mysql_secure_installation」コマンドを実行して、MySQLルートパスワードを設定します。
mysql_secure_installation
' Enterを押します 'ボタンをクリックして続行し、MySQL rootユーザーの新しいパスワードを入力して、' Y 'すべてのオプション。
Press y|Y for Yes, any other key for No:
Please set the password for root here.
New password:
Re-enter new password:
Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y
その結果、MySQLのルートパスワードが設定されました。
次に、以下のようにrootユーザーを使用してMySQLシェルにログインします。
mysql -u root -p
次に、次のクエリを使用して、MySQLで利用可能なすべてのユーザーを確認します。
select User,Host from mysql.user;
そして、MySQLサーバーのデフォルトユーザーのリストを取得します。次に、「exit」と入力してMySQLシェルからログアウトします。
その結果、LLMPスタック用のMySQLサーバーのインストールと構成が正常に完了しました。
このステップでは、PHP-FPMパッケージをインストールし、LighttpdWebサーバーで動作するように構成します。
以下のaptコマンドを使用して、PHP-FPMパッケージをUbuntuシステムにインストールします。
sudo apt install php-fpm php-cgi php-mysql
このコマンドは、最新のPHP-FPM7.4を自動的にインストールします。
すべてのインストールが完了したら、「/ etc / php / 7.4 / fpm」ディレクトリに移動し、vimエディターを使用して構成「php.ini」を編集します。
cd /etc/php/7.4/fpm/
vim php.ini
次の行のコメントを解除して、FastCGIサポートを有効にします。
cgi.fix_pathinfo=1
保存して閉じます。
次に、PHP-FPMサービスを開始し、システムブートに追加します。
systemctl start php7.4-fpm
systemctl enable php7.4-fpm
次に、次のコマンドを使用してPHP-FPMサービスを確認します。
ss -pl | grep php
systemctl status php7.4-fpm
以下は、得られる結果です。
ご覧のとおり、PHP-FPMサービスはUbuntu20.04システムで稼働しています。また、デフォルトでは、sockファイル「/var/run/php/php7.4-fpm.sock」で実行されています。
そして、ubuntu20.04へのPHP-FPMのインストールが完了しました。
このステップでは、PHP-FPMを使用してlighttpdを設定します。
次に、「/ etc / lighttpd / conf-available」ディレクトリに移動すると、いくつかの設定が表示されます。
cd /etc/lighttpd/conf-available/
デフォルトのPHPFastCGI構成「15-fastcgi-php.conf」をコピーし、vimエディターを使用して編集します。
cp 15-fastcgi-php.conf 15-fastcgi-php.conf.orig
vim 15-fastcgi-php.conf
これで、以下のようなデフォルトのPHPFastCGI構成が得られます。
fastcgi.server += ( ".php" =>
((
"bin-path" => "/usr/bin/php-cgi",
"socket" => "/var/run/lighttpd/php.socket",
"max-procs" => 1,
"bin-environment" => (
"PHP_FCGI_CHILDREN" => "4",
"PHP_FCGI_MAX_REQUESTS" => "10000"
),
"bin-copy-environment" => (
"PATH", "SHELL", "USER"
),
"broken-scriptfilename" => "enable"
))
)
デフォルト設定では、Lighttpdはそれ自体でPHP-CGIを生成します。
LighttpdをPHP-FPMサービスで動作させるには、次の設定を使用してデフォルトのPHP-CGI設定を置き換えます。
fastcgi.server += ( ".php" =>
((
"socket" => "/var/run/php/php7.4-fpm.sock",
"broken-scriptfilename" => "enable"
))
)
保存して閉じます。
次に、以下のコマンドを使用して、Lighttpdモジュールfastcgiおよびfastcgi-phpを有効にします。
lighttpd-enable-mod fastcgi
lighttpd-enable-mod fastcgi-php
このコマンドは、モジュール構成のシンボリックリンクを「/ etc / lighttpd/conf-enabled」ディレクトリに作成します。
'/ etc / lighttpd / conf-enabled'を確認できます 次のコマンドを使用してディレクトリを作成します。
ls -lah /etc/lighttpd/conf-enabled/
また、「conf-enabled」ディレクトリでfastcgiとfastcgi-phpの両方の構成を取得します。
次に、新しいセットアップと構成を適用するには、Lighttpdサービスを再起動します。
systemctl restart lighttpd
エラーがないことを確認してください。
その結果、PHP-FPMを使用したlighttpdの設定が正常に完了しました。
LLMPスタックのインストールをテストするために、デフォルトのドキュメントルートディレクトリ'/ var / www/html'に新しいPHP情報スクリプトファイルを作成します。
'/ var / www / html'ディレクトリに移動し、vimエディターを使用して新しいphpファイル'info.php'を作成します。
cd /var/www/html/
vim info.php
次のスクリプトを貼り付けます。
<?php
phpinfo();
?>
保存して閉じます。
次に、Webブラウザを開き、以下のようにパス「/info.php」を使用してサーバーのIPアドレスを入力します。
http://10.10.10.30/info.php
そして、以下のような結果が得られます。
ご覧のとおり、LighttpdとPHP-FPMのインストールに関するすべての情報を確認できます。
その結果、Ubuntu20.04へのLLMPスタックのインストールは正常に完了しました。