php-fpm

php5.3 fastcgi方式 安装以及和nginx整合

孤街醉人 提交于 2019-11-29 06:04:44
php5.3 fastcgi方式 安装以及和nginx整合 注意:不要随便改变基础库的版本,否则会对别的软件产生编译错误 1、基础依赖包安装:    cd /software/zlib-1.2.3./configuremakemake install cd /software/libxml2-2.6.30./configure --prefix=/usr/local/libxml2/make make install cd /software/libmcrypt-2.5.8./configure --prefix=/usr/local/libmcrypt/make make installcd /software/libmcrypt-2.5.8/libltdl ./configure --enable-ltdl-installmakemake installcd /software/libpng-1.2.31./configure --prefix=/usr/local/libpng/makemake installmkdir /usr/local/jpeg6mkdir /usr/local/jpeg6/binmkdir /usr/local/jpeg6/libmkdir /usr/local/jpeg6/includemkdir -p /usr/local/jpeg6/man

php-fpm进程数优化

痴心易碎 提交于 2019-11-29 06:04:29
php-fpm未优化网友反映的问题 1、最近将Wordpress迁移至阿里云。由于自己的服务器是云服务器,硬盘和内存都比较小,所以内存经常不够使,通过ps ax命令查看后,发现启动php-fpm进程数有20多个,内存吃满了,整个服务器才512M的内存。[ 来源: Puppet'S BLOGPuppet'S BLOG ] 2、刚刚开始做博客,在阿里云上买的主机配置比较低。copy了公司服务器的php-fpm等配置到主机上。nginx+php-fpm等软件启动 是没问题,但是在运行一会儿后发现页面无法访问,提示"数据库无法链接"。这把我郁闷坏了,赶紧查看mysql的配置,左看右看mysql没啥问题。 top一下?发现偶的神啊,内存全被php-fpm占用了。然后修改php-fpm的相关配置,修改完成后一切运行OK。[ 来源:辰羽的视界 ] php-fpm优化 需要了解的参数是: pm 、 pm.max_children 、 pm.start_servers 、 pm.min_spare_servers 、 pm.max_spare_servers 。 pm :表示使用那种方式,有两个值可以选择,就是static(静态)或者dynamic(动态)。 在更老一些的版本中,dynamic被称作apache-like。这个要注意看配置文件的说明。 下面5个参数的意思分别为: pm =

nginx+php-fpm配置后页面显示空白的解决方法以及用nginx和php-fpm解决“502 Bad Gateway”问题

拈花ヽ惹草 提交于 2019-11-29 06:04:18
https://stackoverflow.com/questions/15423500/nginx-showing-blank-php-pages For reference, I am attaching my location block for catching files with the .php extension: location ~ \.php$ { include /path/to/fastcgi_params; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name; } Double-check the /path/to/fastcgi-params , and make sure that it is present and readable by the nginx user. 由于nginx与php-fpm之间的一个小bug,会导致这样的现象: 网站中的静态页面 *.html 都能正常访问,而 *.php 文件虽然会返回200状态码, 但实际输出给浏览器的页面内容却是空白。 简而言之,原因是nginx无法正确的将 *.php 文件的地址传递给php-fpm去解析,

Swoole和Swoft的那些事 (Http/Rpc服务篇)

两盒软妹~` 提交于 2019-11-29 04:26:44
https://www.jianshu.com/p/4c0f625d5e11 Swoft在PHPer圈中是一个门槛较高的Web框架,不仅仅由于框架本身带来了很多新概念和前沿的设计,还在于Swoft是一个基于Swoole的框架。Swoole在PHPer圈内学习成本最高的工具没有之一,虽然Swoft的出现降低了Swoole的使用成本,但如果你对Swoole本身了解不够深入,仍然很难避免栽进种种 "坑" 中。 考虑到这个现状,也为降低阅读难度,后续几个和Swoole联系较为密切的机制,笔者会调整写作思路,将文章的定位从 「帮助读者深入理解Swoft」 调整为 「帮助读者理解Swoft和Swoole」 ,叙述节奏也会放慢。 三种PHP应用的Web模型 LNMP模型 LNMP和LAMP是绝大多数PHPer最熟悉的基础Web架构,这里以常见的LNMP作为例子描述一个常见 无Swoole应用的构件组成:Nginx充当Webservice,PHP-fpm维护一个进程池去运行Web项目。 对比更古老的cgi模型,php-fpm已经引入了进程常驻的概念,避免每次请求创建并销毁进程的开销以及拓展加载的开销,但是每个请求仍然要执行PHP RINIT 与 RSHUTDOWN 之间的所有流程,包括重新加载一次框架源码以及项目代码,造成极大的性能浪费。 这种模型的优点是简单成熟和稳定, 一次运行随后销毁

lnmp环境搭建

心不动则不痛 提交于 2019-11-29 04:18:04
一、安装软件版本   1、MySQL5.5.17   2、nginx1.6.2   3、php5.3 #! /bin/sh ### BEGIN INIT INFO # Provides: php-fpm # Required-Start: $remote_fs $network # Required-Stop: $remote_fs $network # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: starts php-fpm # Description: starts the PHP FastCGI Process Manager daemon ### END INIT INFO prefix=/usr/local/php exec_prefix=${prefix} php_fpm_BIN=${exec_prefix}/sbin/php-fpm php_fpm_CONF=${prefix}/etc/php-fpm.conf php_fpm_PID=${prefix}/var/run/php-fpm.pid php_opts="--fpm-config $php_fpm_CONF --pid $php_fpm_PID" wait_for_pid () { try=0 while test

LNMP环境搭建

大兔子大兔子 提交于 2019-11-29 04:17:26
LNMP环境搭建   经过一番折腾,终于将LNMP环境搭建完成了。本文介绍的LNMP环境是在windows的Oracle VM VirtualBox中的Centos虚拟机上搭建的,各个软件的版本为:Centos7 + Nginx1.12.2 + Mysql-5.6.38 + PHP7.2.0。本文是在假设Centos7虚拟机已经安装完成的前提下进行介绍的,若尚未安装,可以前往Centos官网下载对应的ios文件安装,我下载的是这个: http://mirrors.tuna.tsinghua.edu.cn/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1708.iso ,然后按照网上的教程进行安装就可以了,教程实例: https://jingyan.baidu.com/article/9c69d48f8ec01613c8024e58.html。   Centos7虚拟机安装完成就可以开始编译安装Nginx、Mysql和PHP了,下面容我一一道来。 一、安装前 1. 更新系统软件: yum update 2. 查看是否已安装wget: rpm -qa wget 否则安装: yum install wget 3. 查看是否已安装编译器: rpm -qa gcc 否则安装: yum install gcc gcc-c++ 二、安装Nginx 1.

PHP 实现简单的Proxy-Worker并发服务器

柔情痞子 提交于 2019-11-29 03:15:05
近来研究php-fpm 对其并发比较感兴趣,遂造了一个tcp多进程并发服务器玩具,拿出来给大家看看(比较简单) <?php //设置worker进程数目 $workerNum=4; //设置监听ip $ip='0.0.0.0'; //设置监听端口 $port='9501'; //tcp连接池 $pool=[]; //事件池 $event_arr=[]; //进程池 $process=[]; //检查环境设置 if(PHP_VERSION<7) die('php版本至少7以上'.PHP_EOL); //检查扩展 if(!extension_loaded('event')) die('未安装 evenet 扩展.'.PHP_EOL); if(!extension_loaded('pcntl')) die('未安装 pcntl 扩展'.PHP_EOL); // 只允许在cli下面运行 if (php_sapi_name()!="cli") die("只允许在cli下面运行".PHP_EOL); /* //守护进程 //由于进程组长无法创建会话,fork一个子进程并让父进程退出,以便可以创建新会话 switch(pcntl_fork()) { case -1: exit("fork error"); break; case 0: break; default: exit(0); /

12-3 12 php-fpm pool 慢日志 open_basedir 进程

邮差的信 提交于 2019-11-29 02:26:30
12.21 php-fpm的pool 12.22 php-fpm慢执行日志 12.23 open_basedir 12.24 php-fpm进程管理 12.21 php-fpm的pool nginx可以定义多个虚拟主机的conf,同样的,php-fpm可以定义多个资源池子pool,用不同的socket监听,两个pool互不影响,相互隔离 方法一:主配置文件增加,复制原有并修改即可 方法二:创建多个pool文件,放到下级目录 第一步:转移原有[www]pool并创建[axiang]pool [root@axiang-02 ~]# cd /usr/local/php-fpm/etc [root@axiang-02 etc]# vim php-fpm.conf //打开用于复制粘贴,[crtl-z]放后台 [root@axiang-02 etc]# vim php-fpm.d/axiang.conf [root@axiang-02 etc]# cat !$ cat php-fpm.d/axiang.conf [axiang] listen = /tmp/axiang.sock listen.mode = 666 user = php-fpm group = php-fpm pm = dynamic pm.max_children = 50 pm.start_servers = 20 pm

php-fpm的pool

浪子不回头ぞ 提交于 2019-11-29 02:25:04
php-fpm的pool : 为避免多站点使用同一个pool时因一个站点故障导致php资源耗尽,牵连使用同一个pool的其他站点的正常工作,可对每一个站点设置独立pool。 增加pool: 1.编辑php-fpm配置文件: vim /usr/local/php-fpm/etc/php-fpm.conf #在[global]部分内添加以下内容: [zjy.com] #pool名字 listen = /tmp/zjy.sock #监听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 2.检测并重新加载配置: /usr/local/php-fpm/sbin/php-fpm -t;/etc/init.d/php-fpm reload 3.检查是否配置成功: ps aux |grep php-fpm #查看最右侧是否出现 pool zjy.com 的进程 站点分配pool: 1.编辑虚拟主机配置文件: vim /usr/local

LNMP架构php-fpm相关配置

孤者浪人 提交于 2019-11-29 02:24:47
11月30日任务 12.21 php-fpm的pool 12.22 php-fpm慢执行日志 12.23 open_basedir 12.24 php-fpm进程管理 php-fpm的pool php-fpm.conf可以设置多个pool,在其中一个pool资源耗尽,会导致其他站点无法访问资源,报502错误。有必要把站点进行分离,分别使用单独的pool。 修改php-fpm配置文件代码 # 文件地址:/usr/local/php-fpm/etc/php-fpm.conf [root@localhost etc]# vim php-fpm.conf ... # 新增一个pool代码设置 [test] listen = /tmp/test.sock #listen = 127.0.0.1:9000 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 修改虚拟主机配置文件 # 这里设置另外一个虚拟主机 # 实现不同虚拟主机访问资源pool的隔离