2018年6月13日任务
2019独角兽企业重金招聘Python工程师标准>>>
摘要
2018年6月13日任务
12.21 php-fpm的pool
12.22 php-fpm慢执行日志
12.23 open_basedir
12.24 php-fpm进程管理
12.21 php-fpm的pool
• vim /usr/local/php/etc/php-fpm.conf//在[global]部分增加
• include = etc/php-fpm.d/*.conf
• mkdir /usr/local/php/etc/php-fpm.d/
• cd /usr/local/php/etc/php-fpm.d/
• vim www.conf //内容如下
[www]
listen = /tmp/www.sock
listen.mode=666
user = php-fpm
group = php-fpm
pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
rlimit_files = 1024
•
• 继续编辑配置文件
• vim aming.conf //内容如下
[aming]
listen = /tmp/aming.sock
listen.mode=666
user = php-fpm
group = php-fpm
pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
rlimit_files = 1024
• /usr/local/php/sbin/php-fpm –t
• /etc/init.d/php-fpm restart
实例:
在/usr/local/php/etc/php-fpm.conf中添加test.com
查看定义的pid
[root@localhost vhost]# cd /usr/local/php-fpm/etc/
[root@localhost etc]# ls
pear.conf php-fpm.conf php-fpm.conf.default php.ini[root@localhost etc]# cat php-fpm.conf
[global]
pid = /usr/local/php-fpm/var/run/php-fpm.pid
error_log = /usr/local/php-fpm/var/log/php-fpm.log
[www]
listen = /tmp/php-fcgi.sock
#listen = 127.0.0.1:9000
user = php-fpm
group = php-fpm
pm = dynamic
pm.max_children = 50
pm.start_services = 20
pm.min_spare_services = 5
pm.max_spare_service = 35
pm.max_requests = 500
rlimit_files = 1024[test.com]
listen = /tmp/test.sock
#listen = 127.0.0.1:9000
user = php-fpm
group = php-fpm
pm = dynamic
pm.max_children = 50
pm.start_services = 20
pm.min_spare_services = 5
pm.max_spare_service = 35
pm.max_requests = 500
rlimit_files = 1024重新加载[root@localhost etc]# /usr/local/php-fpm/sbin/php-fpm -t[root@localhost etc]# /etc/local/php-fpm/sbin/php-fpm -s reload[root@localhost etc]# ps aux | grep php-fpm #查看添加的test.com
[root@localhost etc]#
使用添加的test pool
[root@localhost etc]# cd /usr/local/nginx/conf/vhost/
[root@localhost vhost]# ls
aaa.com.conf ld.conf proxy.conf ssl.conf test.com.conf
[root@localhost vhost]# vi aaa.com.conf
server
{listen 80 default_server;server_name aaa.com;index index.html index.html index.php;root /data/wwwroot/default;
location ~ \.php${include fastcgi_params;fastcgi_pass unix:/tmp/wzq.sock; # fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME /data/wwwroot/default$fastcgi_script_name;}}[root@localhost vhost]# ls
aaa.com.conf ld.conf proxy.conf ssl.conf test.com.conf
[root@localhost vhost]# tail ../nginx.conftcp_nodelay on;gzip on;gzip_min_length 1k;gzip_buffers 4 8k;gzip_com_level 5;gzip_http_version 1.1;gzip_types text/plain applition/x-javascript text/css text/htm;application/xml;include vhost/*.conf;
- vim /usr/local/php/etc/php-fpm.conf//在[global]部分增加
[root@localhost vhost]# cd /usr/local/php-fpm/etc/
[root@localhost etc]#ls
pear.conf php-fpm.conf php-fpm.conf.default php.ini
[root@localhost etc]#vi /usr/local/php/etc/php-fpm.conf/
[global]
pid = /usr/local/php-fpm/var/run/php-fpm.pid
error_log = /usr/local/php-fpm/var/log/php-fpm.loginclude = /etc/php-fpm.d/*.conf #添加的内容,在www上面,在www行是100dd,删除下面的行
[www][root@localhost etc]# mkdir php-fpm.d
[root@localhost etc]# cd php-fpm.d/
[root@localhost php-fpm.d]# vi www.conf
[www]
#listen = /tmp/php-fcgi.sock
listen = 127.0.0.1:9000
user = php-fpm
group = php-fpm
pm = dynamic #进程启动的形式
pm.max_children = 50
pm.start_services = 20
pm.min_spare_services = 5
pm.max_spare_service = 35
pm.max_requests = 500
rlimit_files = 1024[root@localhost etc]# vi test.conf
[test.com] #只需要把括号里面的内容,更改成你想要的名字
#listen = /tmp/test.sock
listen = 127.0.0.1:9000
user = php-fpm
group = php-fpm
pm = dynamic
pm.max_children = 50
pm.start_services = 20
pm.min_spare_services = 5
pm.max_spare_service = 35
pm.max_requests = 500
rlimit_files = 1024[root@localhost etc]# vi www.conf
[www.com]
#listen = /tmp/test.sock
listen = 127.0.0.1:9000
user = php-fpm
group = php-fpm
pm = dynamic
pm.max_children = 50
pm.start_services = 20
pm.min_spare_services = 5
pm.max_spare_service = 35
pm.max_requests = 500
rlimit_files = 1024[root@localhost etc]# ls
test.conf www.conf[root@localhost ]# cat ../php-fpm.conf
[global]
pid = /usr/local/php-fpm/var/run/php-fpm.pid
error_log = /usr/local/php-local/php-fpm/var/log/php-fpm.log
include = /etc/php-fpm.d/*.conf检测
[root@localhost etc]# /usr/local/php-fpm/sbin/php-fpm -t[root@localhost etc]# /etc/init.d/php-fpm restart[root@localhost etc]#ps aux |grep php-fpm #查看pool.添加的www
12.22 php-fpm慢执行日志
• vim /usr/local/php-fpm/etc/php-fpm.d/www.conf//加入如下内容
request_slowlog_timeout = 1 #日志记录的时候1秒
slowlog = /usr/local/php-fpm/var/log/www-slow.log #日志记录的位置
• 配置nginx的虚拟主机test.com.conf,把unix:/tmp/php-fcgi.sock改为unix:/tmp/www.sock
• 重新加载nginx服务
• vim /data/wwwroot/test.com/sleep.php//写入如下内容
• <?php echo “test slow log”;sleep(2);echo “done”;?>
• curl -x127.0.0.1:80 test.com/sleep.php
• cat /usr/local/php-fpm/var/log/www-slow.log
实例:
vim /usr/local/php-fpm/etc/php-fpm.d/www.conf//加入如下内容
[root@localhost etc]# vim /usr/local/php-fpm/etc/php-fpm.d/www.conf
[www]
#listen = /tmp/php-fcgi.sock
listen = 127.0.0.1:9000
user = php-fpm
group = php-fpm
pm = dynamic #进程启动的形式
pm.max_children = 50
pm.start_services = 20
pm.min_spare_services = 5
pm.max_spare_service = 35
pm.max_requests = 500
rlimit_files = 1024
request_slowlog_timeout = 1 #添加的内容,,请求超过一秒钟,就记录日志。
slowlog = /usr/local/php-fpm/var/log/www-slow.log #日志存放的位置#检查设置是否有误[root@localhost etc]# /usr/local/php-fpm/sbin/php-fpm -t[root@localhost etc]# /etc/init.d/php-fpm restart[root@localhost etc]# cat www.conf #查看日志有没有生成
[root@localhost etc]# ls /usr/local/php-fpm/var/log/ #查看有没有生成 www-slow.log
php-fpm.log www-slow.log
[root@localhost etc]# ls /usr/local/php-fpm/var/log/www-slow.log
/usr/local/php-fpm/var/log/www-slow.log [root@localhost etc]# cat /usr/local/php-fpm/var/log/www-slow.log #查看内容
cat /usr/local/php-fpm/var/log/www-slow.log #显示为空,因为没有执行php
配置nginx的虚拟主机test.com.conf,把unix:/tmp/php-fcgi.sock改为unix:/tmp/www.sock
[root@localhost ]# vi test.com.conf把unix:/tmp/php-fcgi.sock改为unix:/tmp/www.sock
设置慢执行日志
[root@localhost php-fpm.d]# vim /data/wwwroot/test.com/sleep.php #编写一个休眠2秒的php文件
<?phpecho “test slow log”;
sleep(2);
echo “done”;
?>[root@localhost php-fpm.d]# curl -x 127.0.0.1:80 test.com/sleep.php
[root@localhost php-fpm.d]# curl -x 127.0.0.1:80 test.com/sleep.php -I 、#-I检测有没有语法错误
...
.... 500 ...
.....
[root@localhost php-fpm.d]# vi /usr/local/php-fpm/etc/php.ini
/display_err #搜索的内容
/display_errors = On #设置成On,之后就可以在浏览器上面浏览 正常情况下,是off[root@localhost php-fpm.d]# /etc/init.dphp-fpm reload #加载[root@localhost php-fpm.d]# curl -x 127.0.0.1 test.com/sleep.php #重新链接
[root@localhost php-fpm.d]# vi /data/wwwroot/test.com/sleep.php
2.js 3.php admin/ index.html sleep.php upload
[root@localhost php-fpm.d]# vi /data/wwwroot/test.com/sleep.php
<?php
echo "test slow log";
sleep(2);
echo "done";
?>[root@localhost php-fpm.d]# curl -x 127.0.0.1 test.com/sleep.php #再执行一次
[root@localhost php-fpm.d]# cat /usr/local/php-fpm/var/log/www-slow.log ##再查看一次有没有生成 慢执行日志.网站慢的时候,,,,查看/usr/local/php-fpm/var/log/www-slow.log [12 -Jul-2018 13:20:24] [pool www] pid 1223
script_filename = /data/wwwroot/test.com/sleep.php
[123v12h3h21h] sleep () /data/wwwroot/test.com/sleep.php:3 #那个脚本慢,第三行慢[root@localhost php-fpm.d]# cat /data/wwwroot/test.com/sleep.php
<?php
echo "test slow log";
sleep(2);
echo "done";
?>
12.23 open_basedir
• vim /usr/local/php-fpm/etc/php-fpm.d/aming.conf//加入如下内容
php_admin_value[open_basedir]=/data/wwwroot/aming.com:/tmp/
v
• 创建测试php脚本,进行测试
• 再次更改aming.conf,修改路径,再次测试
• 配置错误日志
• 再次测试
• 查看错误日志
实例:
vim /usr/local/php-fpm/etc/php-fpm.d/aming.conf//加入如下内容
[root@localhost php-fpm.d]# vi www.conf//加入如下内容
[www]
#listen = /tmp/php-fcgi.sock
listen = 127.0.0.1:9000
user = php-fpm
group = php-fpm
pm = dynamic #进程启动的形式
pm.max_children = 50
pm.start_services = 20
pm.min_spare_services = 5
pm.max_spare_service = 35
pm.max_requests = 500
rlimit_files = 1024
request_slowlog_timeout = 1
slowlog = /usr/local/php-fpm/var/log/www-slow.log
php_admin_value[open_basedir]=/data/wwwroot/test.com:/tmp/ #添加的内容[root@localhost php-fpm.d]# cat www.conf
[root@localhost php-fpm.d]# netstat -lntp #查看80端口
[root@localhost php-fpm.d]# vi /dta/wwwroot/test.com/3.php
<?php
phpinfo();[root@localhost php-fpm.d]# curl -x 127.0.0.1:80 test.com/3.php -I
[root@localhost php-fpm.d]# /etc/init.d/php-fpm restart[root@localhost php-fpm.d]# ls
查看错误日志
[root@localhost php-fpm.d]#vi /usr/local/php-fpm/etc/php.ini
/display_error //搜索的内容
/display_errors = Off //修改成原来的off/error_log //搜索的内容,,,在error_log = syslog下面添加
error_log = /usr/local/php-fpm/var/log/php_errors.log/error_reporting //搜索的内容在;error_reporting = E_ALL & -E_DEPRECATED & -E_STRICT下面添加然后 把添加的哪一行上面的一行注释掉。
error_reporting = E_ALL[root@localhost php-fpm.d]# grep error_log /usr/local/php-fpm/etc/php.ini #查看错误日志
error_log = /usr/local/php-fpm/var/log/php_errors.logroot@localhost php-fpm.d]# touch /usr/local/php-fpm/var/log/php_errors.log手动生成一个错误日志
root@localhost php-fpm.d]# chmod 777 /usr/local/php-fpm/var/log/php_errors.log
root@localhost php-fpm.d]#/etc/init.d/php-fpm restart #重启一下
root@localhost php-fpm.d]# curl -x 127.0.0.1:80 test.com/3.php -I #重新访问root@localhost php-fpm.d]# cat /usr/local/php-fpm/var/log/php_errors.log #查看错误日志
注意:open_basedir 的作用是限制php在指定的目录里活动。
12.24 php-fpm进程管理
• pm = dynamic //动态进程管理,也可以是static
• pm.max_children = 50 //最大子进程数,ps aux可以查看
• pm.start_servers = 20 //启动服务时会启动的进程数
注意:注释的时候用;号
• pm.min_spare_servers = 5 //定义在空闲时段,子进程数的最少数量,如果达到这个数值时,php-fpm服务会自动派生新的子进程。
• pm.max_spare_servers = 35 //定义在空闲时段,子进程数的最大值,如果高于这个数值就开始清理空闲的子进程。
空闲意思是,没有访问的时候。
• pm.max_requests = 500 //定义一个子进程最多处理的请求数,也就是说在一个php-fpm的子进程最多可以处理这么多请求,当达到这个数值时,它会自动退出。
实例:
[root@localhost php-fpm.d]# vim /usr/local/php-fpm/etc/php-fpm.d/aming.conf//加入如下内容
[www]
#listen = /tmp/php-fcgi.sock
listen = 127.0.0.1:9000
user = php-fpm
group = php-fpm
pm = static #只有最大的生效
pm.max_children = 50 #只有这一个生效
pm.start_services = 20 #启动的个数是20个
pm.min_spare_services = 5 #最低启动5个
pm.max_spare_service = 35
pm.max_requests = 500
rlimit_files = 1024
request_slowlog_timeout = 1
php_admin_value[open_basedir]=/data/wwwroot/aming.com:/tmp/ [root@localhost php-fpm.d]# ps aux | grep php-fpm #查看启动的php
php-fpm .... .. ... .. .. ... ... aming.com[root@localhost php-fpm.d]# ps aux | grep aming.com[root@localhost php-fpm.d]# ps aux | grep aming.com |wc -l #统计行数
21
[root@localhost php-fpm.d]# /usr/local/php-fpm/sbin/php-fpm -t
[root@localhost php-fpm.d]# /etc/init.d/php-fpm restart[root@localhost php-fpm.d]# ps aux | grep php-fpm #查看启动的php
常见问题:
转载于:https://my.oschina.net/u/3803405/blog/1829762
2018年6月13日任务相关推荐
- 2018年4月13日_Java的最新发展– 2018年4月下旬
2018年4月13日 本周Java领域有一些最新的发展,我在本文中总结了其中的一些. 我们知道的JavaOne的终结 Stephen Chin在帖子" JavaOne活动扩展了更多的曲目,语 ...
- 2018-12 jdk_JDK 12新闻(2018年9月13日)
2018-12 jdk 由于计划于本月晚些时候(2018年9月25日)发布JDK 11的 一般可用性 ,是时候开始更仔细地研究JDK 12了 . 在OpenJDK jdk-dev邮件列表上的标题为&q ...
- JDK 12新闻(2018年9月13日)
随着通用性的JDK 11计划在本月底(2018 9月25日),这是一个好时机,开始在更紧密地看着JDK 12 . 在OpenJDK jdk-dev邮件列表上的标题为" JDK 12的计划时间 ...
- 我爱计算机视觉精华文章分类汇总(2018年12月13日)
关注我爱计算机视觉,一个有价值有深度的公众号 目标检测 今日重磅!恺明大神又一力作!重新思考万能的ImageNet预训练模型 YOLO-LITE:专门面向CPU的实时目标检测 Softer-NMS:C ...
- php for循环日历,用php循环语句实现日历查询 2018年4月13日
1.前端代码m.php 实例 html> 月历生成器 .form { width:400px; background-color: lightgreen; } p{ text-align: ce ...
- php变量有三种不同的作用域,PHP中变量类型与转换,变量的检测以及变量的作用域学习--2018年4月13日12时03分...
今天主要讲述了变量类型与转换,变量的检测,变量的作用域. 一.变量的类型与转换 在PHP中有八种变量类型,分别是: 标量中的整形(int),浮点型(float),字符串(string),布尔型(boo ...
- 2018年9月13日训练日记
今晚看了kuangbin最短路专题,我做题真的好慢,看着提交栏里一个大二的学生都ac了好几个题,我还就提交了一个题.看来我训练这么久,之所以没有取得什么成绩.不是我投入的时间少,而是效率极低.
- 2018年9月13日英语学习
句子 The secret to eating less and being happy about it may have been cracked(有裂缝的,声音沙哑的) years ago-by ...
- 照镜子——2018年2月3-6日
停课反思 停课原因 头脑风暴 分期讨论 分期照镜子 小组内讨论 制定计划 反思 停课原因 2月2日早上,米老师在机房和几个人视察了一下机房,发现存在卫生方面的问题.几乎每个人的桌面卫生情况都是不符合卫 ...
最新文章
- mysql 字段扩容_解决DB2事物日志满、扩充表字段长度和表空间的命令
- SAP S4 OP/Cloud大乱斗
- jakarta ee_关于Jakarta EE软件包名称更改的思考
- 实例8:python
- 跨平台(windows+linux)的线程辅助程序,跨平台(Windows+Linux)的Socket通讯程序(二)—结构...
- 实践平台linux,关于构造Linux系统实践平台的设想
- 搞个游戏赚大钱!华为云搞了个吃鲲游戏,约你来打怪!
- 极简主义shiny app
- CSP-M2 B - HRZ 学英语
- html5光线传感器,光线传感器是什么
- SSD NVMe核心之PRP算法
- 用as写2048游戏
- python报告水印怎么弄_如何用python操作word添加水印?这里有个问题,希望大家看一下!...
- PlayStation5上手体验
- 关于vs2005、vs2008和vs2010项目互转的总结
- 关于ITIL、ITIL认证、ITIL的价值
- Maplab系列15:Inverted File
- java代码输出万年历
- 在IIS中使用SSL配置HTTPS网站
- 蚂蚁金服开源背后的“有意思”工程师 | 1024快乐
热门文章
- U盘出现“请将磁盘插入U盘”的问题怎么解决?
- Git 换行符自动转换
- 非常全面的前端协作规范
- 苹果手机投影_手机、平板屏幕投到投影机上常见问题与答案
- 使用IDEA编写Java程序时遇到的小提醒Common part can be extracted from ‘if‘
- 我想谈一谈外包,请不要“妖魔化”它。
- 在这个“未来工厂”里, 人类仅凭脑电波控制机器
- python-伪随机数生成器
- matlab 找最小值位置,matlab 向量最小值位置
- 资源教程[外贸人zencart自助建站视频教程]:第四课(5)zencart更换模板