環境
php-fpm
- nginx で php を使う時は php-fpm が必要
インストール
# remi php7.3
$ sudo yum -y install --enablerepo=remi,remi-php73 php-fpm
php-fpm の設定
$ sudo vi /etc/php-fpm.d/www.conf
; RPM: apache Choosed to be able to access some dir as httpd
user = apache
↓
; RPM: apache Choosed to be able to access some dir as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = apache
↓
; RPM: Keep a group allowed to write in log dir.
group = nginx
listen = 127.0.0.1:9000
↓
listen = /var/run/php-fpm/php-fpm.sock
;listen.owner = nobody
;listen.group = nobody
;listen.mode = 0660
↓
listen.owner = nginx
listen.group = nginx
listen.mode = 0660
$ sudo systemctl start php-fpm.service
$ sudo systemctl enable php-fpm.service
$ sudo systemctl status php-fpm.service
nginx の設定
$ sudo vi /etc/nginx/conf.d/default.conf
default.conf
server {
# ポート80番
listen 80;
# sample.com にアクセスさせたい時は server_name sample.com; になる
# /etc/hosts に localhost は 127.0.0.1 (自分自身のサーバーを示すIP) に向くという初期設定がしてある
# 仮にサーバーのIPアドレスが 192.168.56.101 の場合、localhost だと http://192.168.56.101 にアクセスする設定になる
server_name localhost;
# アクセスログの設定。なくてもいい
access_log /var/log/nginx/logs/localhost.access.log main;
# ファイル名を省略したURLの場合にどのファイルを優先させるかの設定
index index.php index.html index.htm;
# ファイルの置き場所
root /var/www/html/default;
# php ファイルが読み込まれた時の設定
location ~ \.php$ {
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index /index.php;
include /etc/nginx/fastcgi_params;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
location ~ /\.ht {
deny all;
}
}
$ sudo nginx -t
$ sudo systemctl start nginx.service
$ sudo systemctl enable nginx.service
#$ sudo nginx -s reload
権限変更
$ cd /var/lib/php
$ chown -R root:nginx session
関連投稿