/usr/local/php/etc/php-fpm.conf 是php服务的配置
/usr/local/php/etc/php.ini 是php软件的全局配置.如:时钟
主要配置的是php服务的配置,自带服务样板很乱,首先清空,插入代码
> /usr/local/php/etc/php-fpm.conf 清空文件
vim /usr/local/php/etc/php-fpm.conf 其实删除注释后,也就是下面的代码
[global]
pid = /usr/local/php/var/run/php-fpm.pid
error_log = /usr/local/php/var/log/php-fpm.log
[www]
listen = /tmp/php-fcgi.sock 监听的方式,一般为sockte 可以自定义,自动生成
user = php-fpm
group = php-fpm
pm = dynamic 动态的,管理下面的代码
pm.max_children = 50 最大50个子进程
pm.start_servers = 20 一开始启动20子子进程,即启动php就启动20个进程
pm.min_spare_servers = 5 最小子进程5个
pm.max_spare_servers = 35 最多35个子进程
pm.max_requests = 500 一个子进程在它的生命周期内,一共处理500个请求。自动销毁
rlimit_files = 1024 每一个进程,它所使用的文件描述符的限制,大点也没关系
slowlog = /tmp/www_slow.log 追踪网站,排查网站慢的日志
request_slowlog_timeout = 1 脚本超时1秒,记录到上条路径的slow.log中
php_admin_value[open_basedir]=/data/www/:/tmp/ 指定php有权限的目录
代码分为两个部分
1.global 全局配置,主要是pid和错误日志
2.www为服务配置,
如果配置中pm = static 那么只有pm.max_children = 50生效,也就是启动就有50个进程,其它不生效。
建议使用dynamic 一开始会启动20个pool,如果空闲,则一个个销毁,直到最小5个为止。
多个pool的配置 不同域名,对应不同pool。有2个好处,1可以为不同的网站赋予不同的权限2一个网站挂掉,不影响其他pool的网站。
[global]
pid = /usr/local/php/var/run/php-fpm.pid
error_log = /usr/local/php/var/log/php-fpm.log
[www]
listen = /tmp/www.sock
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
slowlog = /tmp/www_slow.log
request_slowlog_timeout = 1
[www1] 改动1
listen = /tmp/www1.sock 改动2
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
slowlog = /tmp/www1_slow.log
request_slowlog_timeout = 1
课后答疑:
1:有两个问题1 这个listen = /tmp/php-fcgi.sock 什么时候写sock 什么时候用127.0.0.1:9000呢?
2 php-fmp里面php_admin_value[open_basedir] =/data/www/ 和nginx里面的虚拟主机配置文件root /data/aaa 如果这两个同时配置了那个目录会生效呢?
答:1. listen你愿意用哪个就哪个,都差不多,但有的人认为socket性能要比ip:port的形式高效,在我看来都差不多。
2. nginx配置的只是一个网站根目录,而php里面的open_basedir 是限定php的,你这样设置后,发现你的网站根本就不能运行了。
2:php-fpm设置了多个池子,如果需要每个pool指定不同的用户,那用户是在php编译安装时在这里--with-fpm-user=php-fpm如何绑定多个用户呢
答:上面那个是默认的,我们还可以在配置文件里定义额外的。
3:理解不了socket是什么
答:就是用来通信的文件,类似tcp/ip的通信机制,这种文件是unix/linux系统里面特有的。像mysql的数据通信,我们就可以使用socket文件通信。

Laravel使用其直观的闪存方法简化了处理临时会话数据。这非常适合在您的应用程序中显示简短的消息,警报或通知。 默认情况下,数据仅针对后续请求: $请求 -

PHP客户端URL(curl)扩展是开发人员的强大工具,可以与远程服务器和REST API无缝交互。通过利用Libcurl(备受尊敬的多协议文件传输库),PHP curl促进了有效的执行

Laravel 提供简洁的 HTTP 响应模拟语法,简化了 HTTP 交互测试。这种方法显着减少了代码冗余,同时使您的测试模拟更直观。 基本实现提供了多种响应类型快捷方式: use Illuminate\Support\Facades\Http; Http::fake([ 'google.com' => 'Hello World', 'github.com' => ['foo' => 'bar'], 'forge.laravel.com' =>

PHP日志记录对于监视和调试Web应用程序以及捕获关键事件,错误和运行时行为至关重要。它为系统性能提供了宝贵的见解,有助于识别问题并支持更快的故障排除

您是否想为客户最紧迫的问题提供实时的即时解决方案? 实时聊天使您可以与客户进行实时对话,并立即解决他们的问题。它允许您为您的自定义提供更快的服务

文章讨论了PHP 5.3中引入的PHP中的晚期静态结合(LSB),从而允许静态方法的运行时分辨率调用以获得更灵活的继承。 LSB的实用应用和潜在的触摸


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

Atom编辑器mac版下载
最流行的的开源编辑器

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

禅工作室 13.0.1
功能强大的PHP集成开发环境

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器