前提
次の手順の続きで進める。
手順
-
実行用ユーザーを作成する
# useradd php-fpm
$ sudo adduser --no-create-home php-fpm
-
使用するディレクトリを作成する
$ sudo mkdir /var/run/php-fpm /var/log/php-fpm $ sudo chown php-fpm:php-fpm /var/run/php-fpm /var/log/php-fpm
-
必要なファイルをコピーする
# cp /usr/local/etc/php-fpm.conf.default /usr/local/etc/php-fpm.conf # cp /usr/local/etc/php-fpm.d/www.conf.default /usr/local/etc/php-fpm.d/www.conf # cp sapi/fpm/php-fpm /usr/local/bin/
-
php.ini
ファイルを編集する# vi /usr/local/php/php.ini
php.inicgi.fix_pathinfo=0 expose_php = Off
-
php-fpm.confファイルを編集する
# cp /usr/local/etc/php-fpm.conf /usr/local/etc/php-fpm.conf.org # vi /usr/local/etc/php-fpm.conf
php-fpm.conf(省略) (パスの設定を変更) pid = /var/run/php-fpm/php-fpm.pid (パスの設定を変更) error_log = /var/log/php-fpm/php-fpm.log (パスの設定を変更) include=/usr/local/etc/php-fpm.d/*.conf
-
php-fpm のサービスファイルを配置する
# cp ./sapi/fpm/php-fpm.service /usr/lib/systemd/system/ # vi /usr/lib/systemd/system/php-fpm.service
[Service] Type=notify User=php-fpm PIDFile=/var/run/php-fpm/php-fpm.pid ExecStart=/usr/local/sbin/php-fpm --nodaemonize --fpm-config /usr/local/etc/php-fpm.conf ExecReload=/bin/kill -USR2 $MAINPID
-
サービスファイルを再読み込みする
# systemctl daemon-reload
-
Nginx の設定ファイルを作成する
# cp /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.`date +%F` # mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/wordpress.conf # vi /etc/nginx/conf.d/wordpress.conf
wordpress.confserver_name localhost; root /usr/share/nginx/html; (中略) location / { index index.php index.html index.htm; } (中略) location ~* \.php$ { fastcgi_index index.php; fastcgi_pass 127.0.0.1:9000; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; }
-
設定ファイルが正しいことを確認する
# nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
-
php-fpm と Nginx を起動する
# systemctl start php-fpm # systemctl start nginx
確認
# rm /usr/share/nginx/html/index.html
# echo "<?php phpinfo(); ?>" >> /usr/share/nginx/html/index.php
# systemctl restart nginx
ブラウザからサーバにアクセスして次のような画面になればOK