<コピペ用>NginxでのPHP7.1とPHP-FPMの設定
Nginxを使う際のPHP7.1とPHP-FPMの設定です。
PHP7&PHP-FPMのインストール
#EPELリポジトリの追加
yum install epel-release -y
#Remiリポジトリの追加
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
#PHP関連のパッケージをインストール
yum --enablerepo=remi,remi-php71 install php php-mysqlnd php-gd php-xml php-xmlrpc php-mbstring php-mcrypt php-fpm php-opcache php-apcu -y
PHP7の設定
上限数、サイズはサイト内容に合わせて変更を。
#PHP.iniをバックアップ
cp /etc/php.ini /etc/php.ini_org
#一発コピペ設定
sed -i -e "s/;date\.timezone\s=/date.timezone = \"Asia\/Tokyo\"/g" -e "s/;date\.timezone\s=/date.timezone = \"Asia\/Tokyo\"/g" -e "s/upload_max_filesize = 2M/upload_max_filesize = 20M/g" -e "s/max_file_uploads = 20/max_file_uploads = 100/g" /etc/php.ini
#以下、個別の場合
#タイムゾーン設定
sed -i -e "s/;date\.timezone\s=/date.timezone = \"Asia\/Tokyo\"/g" /etc/php.ini
#言語設定
sed -i -e "s/;mbstring\.language = Japanese/mbstring.language = Japanese/g" /etc/php.ini
#上限アップロードサイズ変更(20MBの場合)
sed -i -e "s/upload_max_filesize = 2M/upload_max_filesize = 20M/g" /etc/php.ini
#上限アップロード数変更(100の場合)
sed -i -e "s/max_file_uploads = 20/max_file_uploads = 100/g" /etc/php.ini
#変更前
;date.timezone =
;mbstring.language = Japanese
upload_max_filesize = 2M
max_file_uploads = 20
#変更後
date.timezone = "Asia/Tokyo"
mbstring.language = Japanese
upload_max_filesize = 20M
max_file_uploads = 100
PHP-FPMの設定
NginxとPHP-FPMとの接続にUNIX socketを指定する仕方。
#設定ファイルをバックアップ
cp /etc/php-fpm.d/www.conf /etc/php-fpm.d/www.conf_org
#Nginx用に変更(一発コピペ用)
sed -i -e "s/user = apache/user = nginx/g" -e "s/group = apache/group = nginx/g" -e "s/listen = 127\.0\.0\.1:9000/listen = \/var\/run\/php-fpm\/php-fpm.sock/g" -e "s/;listen\.owner = nobody/listen.owner = nginx/g" -e "s/;listen\.group = nobody/listen.group = nginx/g" -e "s/;listen\.mode = 0660/listen.mode = 0660/g" /etc/php-fpm.d/www.conf
#Nginx用に変更(個別用)
sed -i -e "s/user = apache/user = nginx/g" /etc/php-fpm.d/www.conf
sed -i -e "s/group = apache/group = nginx/g" /etc/php-fpm.d/www.conf
sed -i -e "s/listen = 127\.0\.0\.1:9000/listen = \/var\/run\/php-fpm\/php-fpm.sock/g" /etc/php-fpm.d/www.conf
sed -i -e "s/;listen\.owner = nobody/listen.owner = nginx/g" /etc/php-fpm.d/www.conf
sed -i -e "s/;listen\.group = nobody/listen.group = nginx/g" /etc/php-fpm.d/www.conf
sed -i -e "s/;listen\.mode = 0660/listen.mode = 0660/g" /etc/php-fpm.d/www.conf
#変更前
user = apache
group = apache
listen = 127.0.0.1:9000
;listen.owner = nobody
;listen.group = nobody
;listen.mode = 0660
#変更後
user = nginx
group = nginx
listen = /var/run/php-fpm/php-fpm.sock
listen.owner = nginx
listen.group = nginx
listen.mode = 0660
#PHP-FPMの起動
systemctl start php-fpm.service
#PHP-FPMの再起動(すでに起動している場合)
systemctl restart php-fpm.service
#PHP-FPMの自動起動ON
systemctl enable php-fpm.service