欢迎来到酷客淘商城,为站长提供交易担保服务 访问移动版
站长交易首选担保平台!
酷客淘

PHP编译安装后PHP-FPM使用笔记

日期: 2019-11-16 08:31:22 人气: -

今天赶上了123System OPenVZ VPS全场半价的机会,购入了一台512MB内存、双核3.49Ghz Xeon E3-1270 V3 CPU的套餐,这是第一次使用123system的产品,整体印象非常不错,就目前而言速度也是杠杠哒,便手动配置起了最新版的Tengine和PHP 5.6.8。在编译完成之后我决定以PHP -FPM的方式来运行PHP,下面是从各处收集到并且重新整理的一些关于FPM使用的技巧,记录一下方便自己与一些平时接触到这方面工作的朋友吧!


1、安装完之后,对php-conf的修改:


修改用户组:


user = www-data


group = www-data


如果www-data用户不存在,那么执行linux命令先添加www-data用户


groupadd www-data


useradd -g www-data www-data


部分参数解析:


pid = run/php-fpm.pid


#pid设置,默认在安装目录中的var/run/php-fpm.pid,建议开启


error_log = log/php-fpm.log


#错误日志,默认在安装目录中的var/log/php-fpm.log


log_level = notice


#错误级别. 可用级别为: alert(必须立即处理), error(错误情况), warning(警告情况), notice(一般重要信息), debug(调试信息). 默认: notice.


emergency_restart_threshold = 60


emergency_restart_interval = 60s


#表示在emergency_restart_interval所设值内出现SIGSEGV或者SIGBUS错误的php-cgi进程数如果超过 emergency_restart_threshold个,php-fpm就会优雅重启。这两个选项一般保持默认值。


process_control_timeout = 0


#设置子进程接受主进程复用信号的超时时间. 可用单位: s(秒), m(分), h(小时), 或者 d(天) 默认单位: s(秒). 默认值: 0.


daemonize = yes


#后台执行fpm,默认值为yes,如果为了调试可以改为no。在FPM中,可以使用不同的设置来运行多个进程池。 这些设置可以针对每个进程池单独设置。


listen = 127.0.0.1:9000


#fpm监听端口,即nginx中php处理的地址,一般默认值即可。可用格式为: 'ip:port', 'port', '/path/to/unix/socket'. 每个进程池都需要设置.


listen.backlog = -1


#backlog数,-1表示无限制,由操作系统决定,此行注释掉就行。backlog含义参考:http://www.3gyou.cc/?p=41


listen.allowed_clients = 127.0.0.1


#允许访问FastCGI进程的IP,设置any为不限制IP,如果要设置其他主机的nginx也能访问这台FPM进程,listen处要设置成本地可被访问的IP。默认值是any。每个地址是用逗号分隔. 如果没有设置或者为空,则允许任何服务器请求连接


2、对Nginx.conf的fastcgi部分修改:


location ~ \.php$ { 

root html; 

fastcgi_pass 127.0.0.1:9000; 

fastcgi_index index.php; 

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 

include fastcgi_params; 

3、PHP-FPM启动相关参数


#测试php-fpm配置 

/usr/local/php/sbin/php-fpm -t 

/usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini -y /usr/local/php/etc/php-fpm.conf -t 

 

#启动php-fpm 

/usr/local/php/sbin/php-fpm 

/usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini -y /usr/local/php/etc/php-fpm.conf 

 

#关闭php-fpm 

kill -INT `cat /usr/local/php/var/run/php-fpm.pid` 

 

#重启php-fpm 

kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid` 

4、Nginx的开启与关闭


结束进程:fuser -k 80/tcp


启动Nginx:sudo /usr/local/nginx/nginx