centos8平台上php7.4的生产环境配置

一,php错误与日志的配置

1,创建php的日志保存目录:

[root@yjweb ~]# mkdir -p /data/logs/phplogs
[root@yjweb ~]# chmod 777 /data/logs/phplogs

 

2,编辑php.ini中指定错误相关的信息:

[root@yjweb ~]# vi /usr/local/soft/php7/etc/php.ini

配置内容为: 

1,确认log_errors的值是On,

   其默认值是On,一般不需要修改

log_errors = On

 

2,确保display_errors的值是Off,

其默认值是Off,一般不需要修改

说明:在线上不能直接在页面上显示报错信息,会把目录结构/数据表/等暴露出去

display_errors = Off

 

3,重点:指定error_log的值,

error_log = /data/logs/phplogs/php7_errors.log

说明:默认的错误日志写到这里

 

说明:架构森林是一个专注架构的博客,地址:https://www.cnblogs.com/architectforest

         对应的源码可以访问这里获取: https://github.com/liuhongdi/

 说明:作者:刘宏缔 邮箱: 371125307@qq.com

 

 

二,php.ini中需要手动配置的项目:

需要手动指定的环节:

1,时区:

date.timezone = Asia/Shanghai

 

2,单次post的最大数据量:

post_max_size = 128M

 

3,文件上传时文件大小限制:

upload_max_filesize = 64M

 

4,脚本可使用的最大内存大小

memory_limit = 128M

 

5,每个脚本用来解析请求数据的最长的时间

   默认60s

max_input_time = 60

 

6,session的生命周期,设置为1个小时

session.gc_maxlifetime = 3600

 

三,创建运行php的nginx用户

[root@yjweb ~]# groupadd nginx
[root@yjweb ~]# useradd nginx -g nginx -s /sbin/nologin -M
[root@yjweb ~]# grep nginx /etc/passwd
nginx:x:1001:1001::/home/nginx:/sbin/nologin

 

说明:php-fpm的默认运行用户是nobody,

         它是一个linux系统的内置用户,

         如果有需要统一uid的地方则不方便去修改它,

        所以我们自建一个nginx账户,用来运行nginx和php-fpm

 

四,php-fpm的设置之php-fpm.conf

1,配置php-fpm.conf

[root@yjweb ~]# vi /usr/local/soft/php7/etc/php-fpm.conf

配置内容为:

指定php-fpm的错误日志

error_log = /data/logs/phplogs/php-fpm_error.log

 

五,php-fpm的设置之配置www.conf

[root@yjweb ~]# vi /usr/local/soft/php7/etc/php-fpm.d/www.conf

配置内容为: 

1,配置用户和组,使用自己建立的nginx用户

user = nginx
group = nginx 

 

2,配置pm

pm.max_children = 128
pm.start_servers = 10
pm.min_spare_servers = 5
pm.max_spare_servers = 35 

说明:依次为:最大子进程数量

                     最小子进程数量:即:启动时的数量

                     最小闲置子进程数量

                     最大闲置子进程数量:闲置的子进程数量超出此数字的会被杀掉

 

3,配置慢查询

slowlog = /data/logs/phplogs/php-fpm_slow.log
request_slowlog_timeout = 2s

 

说明:配置2s超时

 

六,查看本地centos的版本

[sysop@yjweb ~]$ cat /etc/redhat-release
CentOS Linux release 8.0.1905 (Core) 

 

上一篇:php-cgi和php-fpm笔记


下一篇:Homestead 安装 PHP Swoole 扩展