12.21 php-fpm的pool cd /usr/local/php-fpm/etc vi php-fpm.conf 重新加载并查看服务,发现右边多出了aming.com cd /usr/local/nginx/conf/vhost/ vi aaa.com.conf,内容如下 如果test.com的进程很大,耗尽了php-fpm的进程,那么再有新的进程来的最的时候就会扫错502,因为没有多余的进程去处理它了,而aming.com的站 点的php-fpm的进程不受影响,因为他们是分开来的 在nginx.conf下多了一个include vhost/*.conf;那么在php-fpm.conf下也是支持的 cd /usr/local/php-fpm/etc 查看一下配置文件上的内容 vi /usr/local/php-fpm/etc/php-fpm.conf 将[www] [aming.com]下的内容都删除 mkdir /usr/local/php-fpm/etc/php-fpm.d cd /usr/local/php/etc/php-fpm.d vim www.conf //内容如下 vim aming.conf /usr/local/php-fpm/sbin/php-fpm -t /etc/init.d/php-fpm restart ps aux |grep php-fpm 12.22 php-fpm慢执行日志 做php的网页建议用lnmp,因为可以查看到php网页慢的原因 vim /usr/local/php-fpm/etc/php-fpm.d/www.conf /usr/local/php-fpm/sbin/php-fpm -t /etc/init.d/php-fpm reload 查看有没有日志文件生成,内容是空的,因为没有超过1S的执行过程 vim /data/wwwroot/test.com/sleep.php curl -x127.0.0.1:80 test.com/sleep.php 提示错误 查看日志文件查找错误 vi /usr/local/php-fpm/etc/php.ini 输入2次搜索/display_errors将display_errors = off更改为display_errors = on,之后在浏览器上看到具体的错误信息 再执行curl提示语法错误,逗号分号有问题,需要更入sleep.php配置文件内容的符号为英文输入法 再运行curl,并查看日志,并会告诉你是那里慢,是第3行慢,因为第3行是执行了2秒,是超过了1秒 12.23 open_basedir 以test.com下的3.php来测试 重启服务后再curl -x127.0.0.1 test.com/3.php,这时候就正常了 vi /usr/local/php-fpm/etc/php.ini 输入2次搜索/display_errors将display_errors = on更改为display_errors = off,正常在生产中是不能改为on的,因为不能让人知道错误信息,而是要记录在日志文件中 再输入/error_log搜索指定它的存放错误日志位置 再输入/error_reporting指定它的日志级别 重启前把地址改错test.com改为wwtest.com 先检查一下日志文件存不存在,不存在就要手动生成 重启下:/etc/init.d/php-fpm start 再访问测试 查看一下日志,日志提示3.php在test.com下,不是在wwtest.com下 wwtest.com改为test.com 重启下:/etc/init.d/php-fpm start 再访问测试测试就正常了 12.24php-fpm进程管理 如果用dynamic,那它下面的选项才生效 cat usr/local/php-fpm/etc/php-fpm.d/www.conf 如果用static那它下面的选择只有pm.max_children = 50生效,其它的都不生效了 ps aux |grep php-fpm查看进程