Webサーバー · 2 min read · Dec 18, 2025

Debian Wheezy に PHP5 (PHP-FPM) と MySQL サポートを持つ Lighttpd をインストールする

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

私は、これがあなたにとって機能するという保証はしません!

1 予備ノート

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

2 MySQL 5 のインストール

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

apt-get install mysql-server mysql-client

MySQL の root ユーザーのパスワードを提供するように求められます。このパスワードは、ユーザー root@localhost および [email protected] に対して有効ですので、後で手動で MySQL の root パスワードを指定する必要はありません:

MySQL “root” ユーザーの新しいパスワード: <– yourrootsqlpassword
MySQL “root” ユーザーのパスワードを繰り返します: <– yourrootsqlpassword

3 Lighttpd のインストール

Lighttpd は Debian パッケージとして利用可能ですので、次のようにしてインストールできます:

apt-get install lighttpd

次に、ブラウザを http://192.168.0.100/index.lighttpd.html に向けると、Lighttpd のプレースホルダーページが表示されるはずです:

Lighttpd のデフォルトのドキュメントルートは Debian では /var/www であり、設定ファイルは /etc/lighttpd/lighttpd.conf です。追加の設定は /etc/lighttpd/conf-available ディレクトリ内のファイルに保存されており、これらの設定は lighttpd-enable-mod コマンドを使用して有効にできます。このコマンドは、/etc/lighttpd/conf-enabled ディレクトリから適切な設定ファイルへのシンボリックリンクを作成します。lighttpd-disable-mod コマンドを使用して設定を無効にすることもできます。

4 PHP5 のインストール

次のようにして PHP-FPM を介して Lighttpd で PHP5 を動作させることができます:

apt-get install php5-fpm php5

PHP-FPM は、ソケット /var/run/php5-fpm.sock で FastCGI サーバーを実行するデーモンプロセスです (init スクリプトは /etc/init.d/php5-fpm)。

5 Lighttpd と PHP5 の設定

Lighttpd で PHP5 を有効にするには、/etc/php5/fpm/php.ini を修正し、行 cgi.fix_pathinfo=1 のコメントを外す必要があります:

vi /etc/php5/fpm/php.ini

| [...] ; cgi.fix_pathinfo は CGI に対して *実際の* PATH_INFO/PATH_TRANSLATED サポートを提供します。PHP の以前の動作は、PATH_TRANSLATED を SCRIPT_FILENAME に設定し、PATH_INFO が何であるかを理解しないことでした。PATH_INFO についての詳細は cgi スペックを参照してください。これを 1 に設定すると、PHP CGI がそのパスを仕様に従って修正します。ゼロに設定すると、PHP は以前のように動作します。デフォルトは 1 です。スクリプトを SCRIPT_FILENAME を使用するように修正する必要があります。 ; http://php.net/cgi.fix-pathinfo cgi.fix_pathinfo=1 [...] |

PHP 用の Lighttpd 設定ファイル /etc/lighttpd/conf-available/15-fastcgi-php.conf は spawn-fcgi と共に使用するのに適していますが、PHP-FPM を使用したいので、ファイルのバックアップ (15-fastcgi-php-spawnfcgi.conf という名前) を作成し、15-fastcgi-php.conf を次のように修正します:

cd /etc/lighttpd/conf-available/  
cp 15-fastcgi-php.conf 15-fastcgi-php-spawnfcgi.conf  
vi 15-fastcgi-php.conf

| # -*- depends: fastcgi -*- # /usr/share/doc/lighttpd/fastcgi.txt.gz # http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs:ConfigurationOptions#mod_fastcgi-fastcgi ## PHP 用の FastCGI サーバーを開始します (php5-cgi パッケージが必要です) fastcgi.server += ( ".php" => (( "socket" => "/var/run/php5-fpm.sock", "broken-scriptfilename" => "enable" )) ) |

fastcgi 設定を有効にするには、次のコマンドを実行します:

lighttpd-enable-mod fastcgi  
lighttpd-enable-mod fastcgi-php

これにより、/etc/lighttpd/conf-enabled/10-fastcgi.conf が /etc/lighttpd/conf-available/10-fastcgi.conf を指し、/etc/lighttpd/conf-enabled/15-fastcgi-php.conf が /etc/lighttpd/conf-available/15-fastcgi-php.conf を指すシンボリックリンクが作成されます:

ls -l /etc/lighttpd/conf-enabled
root@server1:/etc/lighttpd/conf-available# ls -l /etc/lighttpd/conf-enabled  
total 0  
lrwxrwxrwx 1 root root 33 Jul  1 20:45 10-fastcgi.conf -> ../conf-available/10-fastcgi.conf  
lrwxrwxrwx 1 root root 37 Jul  1 20:45 15-fastcgi-php.conf -> ../conf-available/15-fastcgi-php.conf  
root@server1:/etc/lighttpd/conf-available#

次に、Lighttpd を再読み込みします:

/etc/init.d/lighttpd force-reload

6 PHP5 のテスト / PHP5 インストールの詳細を取得

デフォルトのウェブサイトのドキュメントルートは /var/www です。今、そのディレクトリに小さな PHP ファイル (info.php) を作成し、ブラウザで呼び出します。このファイルは、インストールされている PHP バージョンなど、PHP インストールに関する多くの有用な詳細を表示します。

vi /var/www/info.php

| |

今、そのファイルをブラウザで呼び出します (例: http://192.168.0.100/info.php):

ご覧の通り、PHP5 は動作しており、Server API 行に示されているように FPM/FastCGI を介して動作しています。さらに下にスクロールすると、PHP5 ですでに有効になっているすべてのモジュールが表示されます。MySQL はそこにリストされていないため、PHP5 にはまだ MySQL サポートがありません。

7 PHP5 で MySQL サポートを取得

PHP で MySQL サポートを取得するには、php5-mysql パッケージをインストールします。他の PHP5 モジュールもインストールすることをお勧めします。アプリケーションに必要な場合があります。次のようにして利用可能な PHP5 モジュールを検索できます:

apt-cache search php5

必要なものを選択し、次のようにしてインストールします:

apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl

Xcache は、PHP 中間コードをキャッシュおよび最適化するための無料でオープンな PHP オペコードキャッシャーです。他の PHP オペコードキャッシャー (eAccelerator や APC など) と似ています。PHP ページの速度を上げるために、これらのいずれかをインストールすることを強くお勧めします。

Xcache は次のようにしてインストールできます:

apt-get install php5-xcache

次に、PHP-FPM を再読み込みします:

/etc/init.d/php5-fpm reload

次に、ブラウザで http://192.168.0.100/info.php を再読み込みし、モジュールセクションに再度スクロールします。そこには、MySQL モジュールを含む多くの新しいモジュールが見つかるはずです:

8 phpMyAdmin

phpMyAdmin は、MySQL データベースを管理するためのウェブインターフェースです。インストールすることをお勧めします:

apt-get install phpmyadmin

次の質問が表示されます:

自動的に再構成するウェブサーバー: <– lighttpd
phpmyadmin のデータベースを dbconfig-common で構成しますか? <– いいえ

その後、http://192.168.0.100/phpmyadmin/ で phpMyAdmin にアクセスできます:

9 PHP-FPM を TCP 接続で使用する

デフォルトでは、PHP-FPM はソケット /var/run/php5-fpm.sock でリッスンしています。また、PHP-FPM を TCP 接続で使用することも可能です。これを行うには、/etc/php5/fpm/pool.d/www.conf を開きます…

vi /etc/php5/fpm/pool.d/www.conf

… そして、listen 行を次のようにします:

| [...] ;listen = /var/run/php5-fpm.sock listen = 127.0.0.1:9000 [...] |

これにより、PHP-FPM は IP 127.0.0.1 (localhost) のポート 9000 でリッスンします。システムで使用されていないポートを使用してください。

次に、PHP-FPM を再読み込みします:

/etc/init.d/php5-fpm reload

次に、Lighttpd の PHP 設定ファイル /etc/lighttpd/conf-available/15-fastcgi-php.conf を開き、ソケット行をホストとポート行に置き換えます:

vi /etc/lighttpd/conf-available/15-fastcgi-php.conf

| # -*- depends: fastcgi -*- # /usr/share/doc/lighttpd/fastcgi.txt.gz # http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs:ConfigurationOptions#mod_fastcgi-fastcgi ## PHP 用の FastCGI サーバーを開始します (php5-cgi パッケージが必要です) fastcgi.server += ( ".php" => (( "host" => "127.0.0.1", "port" => "9000", "broken-scriptfilename" => "enable" )) ) |

最後に、Lighttpd を再読み込みします:

/etc/init.d/lighttpd force-reload

10 リンク

Share: X/Twitter LinkedIn

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

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