nginxでPHPを使用できるように設定する

● nginxでPHPを使用できるように設定する

・php-fpmのインストール

yum -y install php-fpm

・php-fpmの設定を変更する

vi /etc/php-fpm.d/www.conf

user と group を「nginx」に書き換えます

user = nginx
group = nginx

・php-fpmを起動する

systemctl start php-fpm
systemctl enable php-fpm

● phpの実行ユーザーを変更する

php-fpmの設定を変更します

vi /etc/php-fpm.d/www.conf

PHPの実行ユーザーとグループを myuser に変更します

user = nginx
group = nginx

  ↓

user = myuser
group = myuser

nginxリロード

nginx -s reload

● nginxを再起動する

nginx -s reload

( または )

systemctl restart nginx

お好きな方をどうぞ。

これで nginx でPHPが使用できる様になります。

● nginxから実行したPHPにファイル操作権限があるかどうか調べる

WEBサイトのトップにファイル test.php を以下の内容で作成しアップロードします

<?php
ini_set( 'display_errors', 1 );
touch ('aaa.txt');

これを実行してディレクトリ・ファイル操作権限があるかどうかを調べます。 もしエラーになった場合は次の対処法にて対処してください。

● nginxから実行したPHPが「Permission denied」になる場合の対処法

1. ディレクトリの権限をチェックする

2. SELinuxの動作モードを確認し、実行されているときはオフにする

ターミナルから

getenforce

を実行します

Enforcing

と帰ってきた場合は SELinux が有効なので、設定ファイル /etc/sysconfig/selinux を書き換えてオフにします。

vi /etc/sysconfig/selinux

次の様に disabled に設定します

SELINUX=disabled

これでマシンを再起動します。

● Laravelなどのフレームワークで QUERY_STRING が取得できない場合の対処法

/etc/nginx/conf.d/laravel.conf の設定を書き換えます

vi /etc/nginx/conf.d/laravel.conf
try_files $uri $uri/ /index.php$query_string;

  ↓

try_files $uri $uri/ /index.php$is_args$args;
No.1107
07/18 20:18

edit