欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

中小型项目中nginx、php-fpm、php其中有哪些配置用的比较多且重要且需要关注???

程序员文章站 2022-05-11 17:12:28
...
去看了他们的各种配置,太多太多,以现在初级的运维水准不可能一一了解,所以打算问大家有哪些你们熟悉的特别需要了解知道的配置,怎么配置能更好的维护项目、提高性能。

回复内容:

去看了他们的各种配置,太多太多,以现在初级的运维水准不可能一一了解,所以打算问大家有哪些你们熟悉的特别需要了解知道的配置,怎么配置能更好的维护项目、提高性能。

好大的问题,说说我个人关注哪些点,欢迎其他伙伴一起补充完善肯定会漏

安全

  1. nginx(user配置项)、php-fpm(user,group配置项)等服务以及网站目录的权限、用户和用户组这个真的很重要

  2. php安全方面还要注意系统级别的函数如果没有项目需求全部禁用(disable_functions)

  3. php不要打开错误打印,很容易暴露信息被攻击

display_startup_errors = Off ,display_errors = Off

性能

  1. nginx进程数worker_processes、最大连接数worker_connections

  2. php-fpm性能相关:pm.max_children、pm.start_servers、pm.min_spare_servers、pm.max_spare_servers、pm.max_requests

日志监控分析

  1. nginx日志:access_log配合log_format

  2. php记录日志:log_errors

  3. php-fpm记录慢执行日志:slowlog配合request_slowlog_timeout

我还会关注下系统级别:iptables、/etc/sysctl.conf等等

建议

最好自己在写点脚本监控内存、流量、cpu、进程数、磁盘空间等等、也可以用监控产品、开源监控项目等等都可以,合理控制报警策略。

然后定期分析上面配置中所产出的日志文件,把一些响应慢的日志、错误的时间、执行慢的日志都排查一下理解一下,解决一些日常的运行中性能问题

php的配置中基本都是默认不需要改,主要的就是添加Xdebug时需要在php.ini中增加配置,如

[xdebug]
zend_extension="/Applications/MAMP/bin/php/php7.0.0/lib/php/extensions/no-debug-non-zts-20151012/xdebug.so"
xdebug.remote_enable = 1
xdebug.remote_connect_back = 1
xdebug.remote_port = 9000
xdebug.scream=0 
xdebug.cli_color=1
xdebug.show_local_vars=1

Xdebug在Development环境是特别有用的,在Production环境时需要开启OPcache,那就需要打开php.ini中OPcache配置如:

[OPcache]
zend_extension="/Applications/MAMP/bin/php/php7.0.0/lib/php/extensions/no-debug-non-zts-20151012/opcache.so"
  opcache.memory_consumption=128
  opcache.interned_strings_buffer=8
  opcache.max_accelerated_files=4000
  opcache.revalidate_freq=60
  opcache.fast_shutdown=1
  opcache.enable_cli=1

关于PHP日志处理,建议使用monolog/monolog库来处理日志打印。
这里推荐一个异常处理工具Sentry,和日志处理工具Logentries。

php-fpm:

pm 系列配置
相关标签: php-fpm nginx php