Virtual Memory

vmem.jp

さくらのVPSでnginx + Php5-fpm

さらくのVPSでUbuntu 10.04を使っているのだけけど、nginx + php5-fpmをインストールしてみた。 以前はnginx + php5-cgiだったのだけど気がつくとphp5-cgiがお亡くなりになっていることが結構あるので、この際nginxを最新版にしphp5-cgiではなくphp5-fpmを使うことにした。

まず、最新版のnginxをインストール。 Install

/etc/apt/sources.listに以下を追加。

deb http://ppa.launchpad.net/nginx/stable/ubuntu lucid main

キーの追加。

$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys C300EE8C

リポジトリのアップデートとインストール。

$ sudo aptitude update
$ sudo aptitude install nginx

次にphp5-fpmのインストール。 fpmはFastCGI Process Managerのacronymらしい。 そもそもphp5-fpmってなんぞ?という疑問にはここが答えてくれる。 Home - PHP-FPM

Ubuntu 10.04でphp5-fpmをインストールするにはこれを読む。 php5-fpm and fcgiwrap ubuntu packages | groups.drupal.org

/etc/apt/sources.listに以下を追記。

deb http://ppa.launchpad.net/brianmercer/php/ubuntu lucid main 

キーの取得。

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 8D0DC64F

リポジトリのアップデートとインストール。

$ sudo aptitude update
$ sudo aptitude install php5-fpm

必要であれば設定ファイルを修正。

$ sudo vi /etc/php5/fpm/php5-fpm.conf

デフォルトでは生成する子プロセスは固定(10)されている。 今のところたいしてアクセスがないサイトなので5に変更した。

nginx.confの修正。 root /var/www/default としている。

location ~ \.php$ {
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php index.html;
    fastcgi_param  SCRIPT_FILENAME  /var/www/default$fastcgi_script_name;
    include        fastcgi_params;
}

php5-pfmの起動。

$ sudo service php5-fpm start