PHP-FPM を動かすメモ

PHP をソースからインストール〜PHP-FPMの起動までのメモです。
予め必要なモジュールをインストールしておきます。

$ sudo aptitude install autoconf2.13 libbz2-dev libevent-dev libxml2-dev libcurl4-openssl-dev libjpeg-dev libpng-dev libxpm-dev libfreetype6-dev libt1-dev libmcrypt-dev libxslt-dev libmysqlclient-dev mysql-common mysql-client mysql-server -y

PHP のインストール

PHPをソースからインストールします。PHP-FPM を使うため –enable-fpm をつけます。

$ wget http://jp.php.net/get/php-5.3.8.tar.gz/from/this/mirror -O php-5.3.8.tar.gz
$ tar zxvf php-5.3.8.tar.gz 
$ cd php-5.3.8/
$ ./buildconf --force 
$ ./configure \
    --with-curl \
    --with-pear \
    --with-gd \
    --with-jpeg-dir \
    --with-png-dir \
    --with-zlib \
    --with-xpm-dir \
    --with-freetype-dir \
    --with-t1lib \
    --with-mcrypt \
    --with-mhash \
    --with-mysql \
    --with-mysqli \
    --with-pdo-mysql \
    --with-openssl \
    --with-xmlrpc \
    --with-xsl \
    --with-bz2 \
    --with-gettext \
    --enable-fpm \
    --enable-exif \
    --enable-wddx \
    --enable-zip \
    --enable-bcmath \
    --enable-calendar \
    --enable-ftp \
    --enable-mbstring \
    --enable-soap \
    --enable-sockets \
    --enable-sqlite-utf8 \
    --enable-shmop \
    --enable-dba \
    --enable-sysvmsg \
    --enable-sysvsem \
    --enable-sysvshm
$ make
$ make test
$ sudo make install
$ sudo /path/to/php-5.3.8/build/shtool install -c ext/phar/phar.phar /usr/local/bin
$ sudo ln -s -f /usr/local/bin/phar.phar /usr/local/bin/phar
$ sudo cp -f /usr/share/php5/php.ini-production /usr/local/etc/php.ini

PHP-FPMの設定

PHP-FPM 関連ファイルの配備をします。

$ sudo mkdir /var/log/php-fpm
$ sudo chown -R nobody:nobody /var/log/php-fpm
$ sudo cp -f /usr/local/etc/php-fpm.conf.default /usr/local/etc/php-fpm.conf

service コマンドで管理できるように、PHP-FPM の起動スクリプトを設定します。

$ sudo cp -f sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
$ sudo chmod 755 /etc/init.d/php-fpm
$ sudo update-rc.d -f php-fpm defaults

PHP-FPMの設定ファイル(/usr/local/etc/php-fpm.conf)の内容を修正します。

@@ -22,7 +22,7 @@
 ; Pid file
 ; Note: the default prefix is /usr/local/var
 ; Default Value: none
-;pid = run/php-fpm.pid
+pid = run/php-fpm.pid

@@ -163,17 +163,17 @@
 ; The number of child processes created on startup.
 ; Note: Used only when pm is set to 'dynamic'
 ; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2
-;pm.start_servers = 20
+pm.start_servers = 20

 ; The desired minimum number of idle server processes.
 ; Note: Used only when pm is set to 'dynamic'
 ; Note: Mandatory when pm is set to 'dynamic'
-;pm.min_spare_servers = 5
+pm.min_spare_servers = 5

 ; The desired maximum number of idle server processes.
 ; Note: Used only when pm is set to 'dynamic'
 ; Note: Mandatory when pm is set to 'dynamic'
-;pm.max_spare_servers = 35
+pm.max_spare_servers = 35

 ; The number of requests each child process should execute before respawning.
 ; This can be useful to work around memory leaks in 3rd party libraries. For

PHP-FPM が起動できることを確認します。

$ sudo service php-fpm start

参考URL: Lightning-fast WordPress with PHP-FPM and nginx

広告

PHP-FPM を動かすメモ」への2件のフィードバック

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中