Lighttpd、MySQL、およびPHP-FPMを使用してUbuntu20.04サーバーをセットアップします
Lighttpdは、Nginxと同等のパフォーマンスを発揮する高速で柔軟なオープンソースウェブサーバーです。 LighttpdサーバーでWordPress、MagentoなどのPHPアプリケーションをホストするには、サーバーにLLMPスタックを設定する必要があります。 LLMPは、Linux、Lighttpd、MySQL、およびPHPの略です。
Lighttpdのパフォーマンスのおかげで、LLMPスタックは、特定のトラフィック量で設定されたLAMP(Apache)を簡単に上回ります。 LLMPとLEMP(Nginx)に関する限り、パフォーマンスはほぼ同じです。しかし、Nginxは大衆の間でより人気のある選択肢であり、LEMPセットアップに対する優れたコミュニティサポートがあります。
最小限のメモリ消費で大量のトラフィックを処理するサーバーを探している場合は、LLMPセットアップが適しています。このガイドでは、Ubuntu 20.04LTSマシンにLLMPスタックをインストールする方法を見ていきます。
前提条件
Ubuntu 20.04 LTSサーバーが必要であり、 sudo
有効なユーザー。また、Linuxコマンドの基本を理解している必要があります。
始める前に、以下のコマンドを発行して、Ubuntu20.04サーバー上のパッケージを更新およびアップグレードします。
sudo apt-get update && apt-get upgrade
LighttpdWebサーバーをインストールします
Ubuntu20.04マシンにLighttpdWebサーバーをインストールするには、ターミナルで次のコマンドを入力するだけです。
sudo apt-lighttpdをインストールします
インストールプロセスが完了したら、次のコマンドを入力してLighttpdWebサーバーを起動して有効にします。
systemctl start lighttpd systemctl enable lighttpd
Lighttpdサーバーのステータスを確認するには、以下に示すコマンドを入力します。
systemctl status lighttpd
💡ヒント: (END)が書かれた最後の行を削除するには、を押します。 ESC
と q
さらにコマンドを入力できるようにします。
次に、UFWファイアウォールでHTTP、HTTPS、およびSSHサービスを設定します。 UFWは、Ubuntuのデフォルトのファイアウォール構成ツールであり、UncomplicatedFirewallとも呼ばれます。次のコマンドを入力し、Enterキーを1つずつ押します。
sudo ufw allow ssh sudo ufw allow http sudo ufw allow https
次のコマンドを発行して、UFWファイアウォールを有効にします。
sudo ufw enable
「コマンドは既存のssh接続を中断する可能性があります」というプロンプトが表示されたら、次のように入力します y
とヒット 入力
.
Lighttpdのインストールを確認するには、 WebブラウザのIPアドレスでサーバーにアクセスします。次の画面が表示された場合は、LighttpdWebサーバーがUbuntu20.04マシンに正常にインストールされていることを意味します。
MySQLサーバーのインストールと構成
MySQLは、構造化クエリ言語に基づくリレーショナルデータベース管理システムです。 MySQLサーバーとクライアントをUbuntu20.04にインストールするには、次のコマンドをコピーして貼り付け、 入力
.
sudo apt-get install mysql-server mysql-client
この操作では、インストール後に247MBの追加のディスク容量が必要になるというメッセージが表示されます。だから、タイプ y
とヒット 入力
.
インストールプロセスが完了したら、MySQLサーバーを起動して有効にし、次のコマンドを1つずつ発行してシステムブートに追加します。
systemctl start mysql systemctl enable mysql
画面に次のメッセージが表示されます。
MySQLサービスのステータスを確認するには、ターミナルで次のコマンドを入力します。 The mysql.service
ステータスは「アクティブ(実行中)」と表示されます。
systemctl status mysql
MySQLのセキュリティ設定を構成するには、 MySQLパッケージに付属のセキュリティスクリプトを実行します。次のコマンドを入力し、Enterキーを押してスクリプトを実行します。
mysql_secure_installation
上記のコマンドは、MySQLサーバーを構成するためのいくつかの質問を促します。
を使用してパスワードを設定するように求められます パスワードコンポーネントの検証
。このプラグインは、MySQLデータベースの強力なパスワードを設定するのに役立ちます。押す y
Enterキーを押して、このプラグインを有効にします。タイプ 0
, 1
、 また 2
パスワードの強度レベルを決定するパスワード検証ポリシーを選択します。
強力なパスワードを入力し、 the 検証パスワード
プラグインは、パスワードの推定強度について教えてくれます。押す y
とヒット 入力
.
安全なパスワードを設定した後、以下に説明するように残りの設定を構成します。
- 匿名ユーザーを削除する - 入力
y | Y
MySQLにはデフォルトで匿名ユーザーが含まれているため、ユーザーアカウントがなくても誰でもMySQLサーバーに接続できます。したがって、それを削除します。
- rootログインをリモートで禁止する - 入力
y | Y
ルートは「localhost」からのみ許可される必要があるためです。これにより、誰かがネットワークの外部でrootとしてログインできないようになります。
- テストデータベースを削除してアクセスしますか? - 入力
y | Y
MySQLには、誰でもアクセスできるテストデータベースが付属しているためです。したがって、実稼働環境に移動する前にそれを削除してください。
- 今すぐ特権テーブルをリロードしますか? 入力
y | Y
これにより、これまでに行った変更がすぐに有効になるためです。
MySQLサーバーにアクセスできるすべてのユーザーを確認するには、まず、以下のコマンドを使用してrootとしてMySQLにログインします。
mysql -u root -p
次に、次のコマンドを発行して、MySQLサーバー上のユーザーリストを取得します。
mysql.userからユーザー、ホストを選択します。
ユーザーリストを確認したら、次のように入力します 出口
MySQLシェルからログアウトします。
PHPのインストール– Fast CGIプロセスマネージャー(PHP-FPM)
PHP-FPMを使用すると、サーバーはローエンドサーバーでも膨大な量の負荷を処理できます。特定のPHPアプリケーションでの読み込み時間を300%短縮すると主張しています。
最新のPHP-FPMパッケージをインストールするには、次のコマンドを発行してEnterキーを押します。
sudo apt-install php-fpm php-cgi php-mysql
PHP-FPM構成を微調整します にいくつかの変更を加えることによって php.ini
ファイル。
これを行うには、最初にディレクトリに移動します/etc/php/7.4/fpm
を使用して CD
以下に示すようなコマンド。
cd /etc/php/7.4/fpm
次に、以下のコマンドを使用して開きます php.ini
vimエディターのファイル。
vim php.ini
コメントを外す cgi.fix_pathinfo = 1
ライン。 ‘を含む行を検索しますcgi.fix_pathinfo = 1
‘エディタで。これを行うには、「ESC
’とタイプ /cgi.fix_pathinfo=1
とヒット 入力
.
次に、を押します 私
挿入モードに切り替えて削除するには ;
行の前の(セミコロン)記号またはを押します バツ
の行のコメントを解除するボタン php.ini
ファイル。
完了したら、ファイルに加えた変更を保存し、を押してvimエディターを終了します ESC
コマンドモードに入り、次のように入力します :wq
とヒット 入力
エディターを終了します。
PHP-FPMを起動して有効にする 次のコマンドを発行します。
systemctl start php7.4-fpm systemctl enable php7.4-fpm
PHP-FPMのステータスを確認するには、次のコマンドを実行します。
systemctl status php7.4-fpm
LighttpdとPHP-FPMの設定
ここで、いくつかの変更を加えます 15-fastcgi-php.conf
LighttpdとPHP-FPMを設定するための設定ファイル。
このコマンドを入力して適切なディレクトリに移動し、Enterキーを押します。
cd etc / lighttpd / conf-available /
‘の複製コピーを保持したい場合15-fastcgi-php.conf
‘ファイルを作成し、以下のコマンドを使用します。
cp 15-fastcgi-php.conf 15-fastcgi-php.conf.orig
次に、vimエディターを使用して、以下のコマンドを使用してこのファイルを開き、編集します。
vim 15-fastcgi-php.conf
ここで、デフォルトのPHP-CGI構成コンテンツを以下に示すコンテンツに置き換えます。
fastcgi.server + =( ".php" =>(( "socket" => "/var/run/php/php7.4-fpm.sock"、 "broken-scriptfilename" => "enable")))
これを行うには、以下に示す特定の順序で手順を実行します。
- 押す '
ESC
' と '私
’を挿入モードに入ります。 - 次に、を使用して削除する必要のある行に移動します。
上
また下
矢印キー(上下の矢印キーはviエディターでは機能しますが、viエディターでは機能しません)。 - 特定の行を削除するには、を押します
dd
。そして一言を削除するにはプレスバツ
. - 次に、上記のコードをコピーしてファイルに貼り付けます。
- 次に、ファイルを保存し、を押してvimを終了します
ESC
,:wq
、 と入力
.
これで、lighttpdはPHP-FPMで適切に動作し、適切に構成されます。
FastCGILighttpdモジュールを有効にする 以下のコマンドを使用します。
lighttpd-enable-mod fastcgi lighttpd-enable-mod fastcgi-php
最後に、Lighttpd Webサーバーを再起動して、新しい構成と設定を適用します。
systemctl restart lighttpd
テスト LLMPサーバー
新しく作成したLLMPサーバーをテストするために、パブリックディレクトリのルートにファイルを作成します。 / var / www / html
.
まず、を使用してディレクトリに移動します CD
以下に示すようなコマンド。
cd / var / www / html /
新しいファイルを作成する まあ言ってみればfile.php
以下に示すように、vimエディターを使用します。
vim file.php
次に、を押して挿入モードに入り、エディターにこの単純なスクリプトを入力します。 私
.
を押してファイルを保存して終了します ESC
と :wq
.
The phpinfo()
phpに関連する情報を呼び出す関数です。このスクリプトは、機能しているかどうかをテストするためのものです。選択した他のphpスクリプトを使用することもできます。
最後に、サーバーをテストするには、Webブラウザーを開いて、次のアドレスを入力して、作成したファイルにアクセスします。 //your-server-ip/file.php
.
結果としてPHPバージョンページが表示された場合は、LLMPスタックがUbuntu20.04マシンに正常にインストールされていると言っても過言ではありません。これで、実行するPHPアプリケーションをサーバーにインストールできます。