Debian Stretch 9.3でZabbixを用いた温度監視の設定を行うため、Nginxの追加設定としてPHPの動作設定を行います。

前回でZabbixに必要なNgnixとMariaDBのインストールを行いましたが、さらにzabbixの動作にはnginxでphpを動作させる必要があります。本記事ではnginxにphp-fpmの導入を行います。

php-fpmの導入

nginxでphpを動作させるためphp-fhpを導入します。

$ sudo apt install php-fpm

/etc/php/7.0/fpm/pool.d/www.confを編集して設定を記述します。デフォルトではapacheが対象となっているため、nginxに書き替えます。

user = www-data
group = www-data
↓
user = nginx
group = nginx

...

listen.owner = www-data
listen.group = www-data
↓
listen.owner = nginx
listen.group = nginx

また、listen = /run/php/php7.0-fpm.sockとなっていることも確認しておきます。

確認後、サービスの再起動を行います。

$ sudo systemctl restart php7.0-fpm

phpをnginxに設定

/etc/nginx/conf.d/default.confを編集して、nginxでphpの動作設定を行います。

location / {
    root   /usr/share/nginx/html;
    index  index.html index.htm;
}
↓
location / {
    root   /usr/share/nginx/html;
    index  index.html index.htm index.php;
}

...
#location ~ \.php$ {
#    root           html;
#    fastcgi_pass   127.0.0.1:9000;
#    fastcgi_index  index.php;
#    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
#    include        fastcgi_params;
#}
↓
location ~ \.php$ {
    root           /usr/share/nginx/html;
    fastcgi_pass   unix:/run/php/php7.0-fpm.sock;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  $document_root/$fastcgi_script_name;
    include        fastcgi_params;
}

設定後、設定を反映させます。

$ sudo systemctl restart nginx

phpの動作確認

phpの動作テスト用に、次のファイルを作成します。

$ sudo vim /usr/share/nginx/html/info.php

ファイルの内容としては、phpinfoを表示させる簡単なものです。

<?php echo phpinfo(); ?>

これでhttpアクセスした結果としてphpinfoが表示されればOKです。

参考

次の記事を参考としました。

今後

次回の記事はZabbixの導入を行っていきます。