インストールガイド · 1 min read · Dec 23, 2025

CentOS 7にLighttpdとPHP-FPM、MariaDBをインストールする方法

Lighttpdは、安全で高速、標準に準拠したウェブサーバーで、速度が重要な環境向けに設計されています。このチュートリアルでは、PHPサポート(PHP-FPMを通じて)とMySQLサポートを持つCentOS 7サーバーにLighttpdをインストールする方法を示します。PHP-FPM(FastCGIプロセスマネージャー)は、特に忙しいサイトに役立つ追加機能を備えた代替のPHP FastCGI実装です。このチュートリアルでは、Lighttpdのspawn-fcgiの代わりにPHP-FPMを使用します。

1 予備ノート

このチュートリアルでは、ホスト名server1.example.comとIPアドレス192.168.1.100を使用します。これらの設定はあなたの環境によって異なる場合があるため、適宜置き換える必要があります。

2 MariaDBをMySQLの代替としてインストールする

まず、次のようにMySQLをインストールします:

yum -y install mariadb mariadb-server

次に、MySQLのシステム起動リンクを作成し(システムが起動するたびにMySQLが自動的に起動するように)、MySQLサーバーを起動します:

systemctl enable mariadb.service  
systemctl start mariadb.service

MariaDBのrootアカウントのパスワードを設定します:

mysql_secure_installation
[root@server1 ~]# mysql_secure_installation  
/usr/bin/mysql_secure_installation:
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB  
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
MariaDBを保護するためにログインするには、rootユーザーの現在の  
パスワードが必要です。MariaDBをインストールしたばかりで、  
まだrootパスワードを設定していない場合、パスワードは空白ですので、  
ここでEnterを押してください。
Enter current password for root (enter for none): <-- press enter  
OK, successfully used password, moving on...
rootパスワードを設定することで、適切な認証なしに誰もMariaDBの  
rootユーザーにログインできないようにします。
Set root password? [Y/n] <-- y  
New password: <-- enter new password  
Re-enter new password: <-- enter new password  
Password updated successfully!  
Reloading privilege tables..  
... Success!
デフォルトでは、MariaDBのインストールには匿名ユーザーがあり、誰でも  
ユーザーアカウントを作成することなくMariaDBにログインできます。  
これはテスト専用であり、インストールを少しスムーズにするためのものです。  
本番環境に移行する前に、これらを削除する必要があります。
Remove anonymous users? [Y/n] <-- y  
... Success!
通常、rootは「localhost」からのみ接続できるようにするべきです。  
これにより、誰かがネットワークからrootパスワードを推測できないようにします。
Disallow root login remotely? [Y/n] <-- y  
... Success!
デフォルトでは、MariaDBには誰でもアクセスできる「test」という名前のデータベースが付属しています。  
これもテスト専用であり、本番環境に移行する前に削除する必要があります。
Remove test database and access to it? [Y/n] <-- y  
- Dropping test database...  
... Success!  
- Removing privileges on test database...  
... Success!
特権テーブルを再読み込みすることで、これまでに行ったすべての変更が  
即座に反映されることを保証します。
Reload privilege tables now? [Y/n] <-- y  
... Success!
Cleaning up...
すべて完了しました!上記のすべての手順を完了した場合、あなたのMariaDB  
インストールは現在安全であるはずです。
MariaDBをご利用いただきありがとうございます!

3 Lighttpdのインストール

LighttpdとPHP-FPMは公式のCentOSリポジトリにはないため、EPELリポジトリを有効にする必要があります:

yum -y install epel-release

EPEL GPGキーをインポートします:

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7

その後、次のコマンドを実行します:

yum update

その後、次のようにLighttpdをインストールできます:

yum -y install lighttpd

次に、Lighttpdのシステム起動リンクを作成し(システムが起動するたびにLighttpdが自動的に起動するように)、それを起動します:

systemctl enable lighttpd.service  
systemctl start lighttpd.service

Lighttpdが次のエラーメッセージで起動に失敗した場合…

(network.c.203) socket failed: Address family not supported by protocol

… /etc/lighttpd/lighttpd.confを開きます…

nano /etc/lighttpd/lighttpd.conf

… server.use-ipv6をenableからdisableに変更します:

[...]  
##  
## Use IPv6?  
##  
server.use-ipv6 = "disable"  
[...]  

その後、再度Lighttpdを起動してみてください - 問題なく動作するはずです:

systemctl start lighttpd.service

Lighttpdのドキュメントルートは/var/www/ htdocs(ベースディレクトリ/var/wwwにhtdocsというサブディレクトリがある)ですが、デフォルトファイルは/var/www/ lighttpdにインストールされます。これは一貫性がないため、次のようにディレクトリの名前を変更する必要があります。

mv /var/www/lighttpd /var/www/htdocs

今、ブラウザをhttp://192.168.1.100に向けると、次のページが表示されるはずです:

lighttpdのスタートページ

LighttpdのデフォルトのドキュメントルートはCentOS 7で/var/www/htdocs/であり、設定ファイルは/etc/lighttpd/lighttpd.confです。

4 PHPのインストール

次のようにPHP-FPMをインストールすることで、LighttpdでPHPを動作させることができます:

yum -y install php-fpm lighttpd-fastcgi

PHP-FPMは、ポート9000でFastCGIサーバーを実行するデーモンプログラムです。

/etc/php-fpm.d/www.confを開きます…

nano /etc/php-fpm.d/www.conf

… ユーザーとグループをlighttpdに設定します:

[...]  
; プロセスのUnixユーザー/グループ  
; 注意:ユーザーは必須です。グループが設定されていない場合、デフォルトのユーザーのグループが  
;       使用されます。  
; RPM: apacheがhttpdとしていくつかのディレクトリにアクセスできるように選択されました  
user = lighttpd  
; RPM: ログディレクトリに書き込むことができるグループを保持します。  
group = lighttpd  
[...]  

PHP-FPMのシステム起動リンクを作成し、それを起動します:

systemctl enable php-fpm.service  
systemctl start php-fpm.service
Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。