博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PHP7.1.5编译安装
阅读量:5759 次
发布时间:2019-06-18

本文共 3055 字,大约阅读时间需要 10 分钟。

hot3.png

环境

我使用的是Ubuntu14.04 LTS,安装PHP7.1.5过程记录,如下。

安装php过程

获取源码

wget http://am1.php.net/distributions/php-7.1.4.tar.gztar zxvf php-7.1.5.tar.gz cd php-7.1.5

安装依赖

sudo apt-get updatesudo apt-get install libkrb5-dev \libc-client2007e                 \libc-client2007e-dev             \libcurl4-openssl-dev             \libbz2-dev                       \libjpeg-dev                      \libmcrypt-dev                    \libxslt1-dev                     \libxslt1.1                       \libpq-dev                        \libpng12-dev                     \libfreetype6-dev                 \build-essential                  \

编译

./configure --prefix=/usr/local/php \ --with-curl \ --with-freetype-dir \ --with-gd \ --with-gettext \ --with-iconv-dir \ --with-kerberos \ --with-libdir=lib64 \ --with-libxml-dir \ --with-mysqli \ --with-openssl \ --with-pcre-regex \ --with-pdo-mysql \ --with-pdo-sqlite \ --with-pear \ --with-png-dir \ --with-xmlrpc \ --with-xsl \ --with-zlib \ --enable-fpm \ --enable-bcmath \ --enable-libxml \ --enable-inline-optimization \ --enable-gd-native-ttf \ --enable-mbregex \ --enable-mbstring \ --enable-opcache \ --enable-pcntl \ --enable-shmop \ --enable-soap \ --enable-sockets \ --enable-sysvsem \ --enable-xml \ --enable-zip

configure过程中爆出缺什么的错误,就在上面安装依赖的命令中加一条 apt-get install lib<缺的东西名字>-dev(el)

// 根据机子cpu数,分配编译进程数,以加快编译sudo make -j4sudo make install

编译完成,返回一些执行文件路径、和配置文件位置

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20160303/Installing PHP CLI binary:        /usr/local/php/bin/Installing PHP CLI man page:      /usr/local/php/php/man/man1/Installing PHP FPM binary:        /usr/local/php/sbin/# PHP-FPM 配置文件Installing PHP FPM defconfig:     /usr/local/php/etc/Installing PHP FPM man page:      /usr/local/php/php/man/man8/Installing PHP FPM status page:   /usr/local/php/php/php/fpm/Installing phpdbg binary:         /usr/local/php/bin/Installing phpdbg man page:       /usr/local/php/php/man/man1/Installing PHP CGI binary:        /usr/local/php/bin/Installing PHP CGI man page:      /usr/local/php/php/man/man1/Installing build environment:     /usr/local/php/lib/php/build/Installing header files:          /usr/local/php/include/php/Installing helper programs:       /usr/local/php/bin///php-fpm的执行文件位置/usr/local/php/sbin/php-fpm

FPM启动前的配置

进入php-fpm.conf所在目录

cd /usr/local/php/etc

配上php-fpm.conf以及php.ini,具体配置可见:

sudo mv php-fpm.conf.default php-fpm.confsudo mv ./php-fpm.d/www.conf.default ./php-fpm.d/www.confsudo cp src/php-7.1.5/php.ini-development  usr/local/php/lib/php.ini

配置pm的运行方式

  1. 以静态(static)方式运行
pm = static// 启动指定数目的子进程pm.max_children = 5
  1. 以动态方式运行
pm = dynamicpm.start_servers = 2pm.min_spare_servers = 1pm.max_spare_servers = 3
  1. 运行方式的选择
  • 内存较小的机子通常使用动态方式,可以释放多余的进程,可以回收一定的内存
  • 内存较大的机子可使用静态方式,指定静态的小数量,保证系统的平稳

配置pm进程重启

累计到500个请求之后自动重启该进程

pm.max_requests = 500

给fpm指定执行用户

  1. 修改php-fpm/www.conf
user = wwwgroup = www
  1. 添加系统用户
sudo adduser www

启动/停止/重启fpm

//启动sudo /usr/local/php/sbin/php-fpm //停止kill -INT pid //重启kill -USR2 pid

参考文档

转载于:https://my.oschina.net/flyrobin/blog/1505300

你可能感兴趣的文章
使用sstream读取字符串中的数字(c++)
查看>>
如何提高还在用window系统的编码硬效率
查看>>
树莓派下实现ngrok自启动
查看>>
javascript静态类型检测工具—Flow
查看>>
MachineLearning-Sklearn——环境搭建
查看>>
node学习之路(二)—— Node.js 连接 MongoDB
查看>>
Goroutine是如何工作的?
查看>>
《深入理解java虚拟机》学习笔记系列——垃圾收集器&内存分配策略
查看>>
用grunt搭建自动化的web前端开发环境-完整教程
查看>>
研究人员发现:基于文本的AI模型容易受到改述攻击
查看>>
TriggerMesh开源用于多云环境的Knative Event Sources
查看>>
GitLab联合DigitalOcean为开源社区提供GitLab CI免费托管
查看>>
通过XAML Islands使Windows桌面应用程序现代化
查看>>
区块链现状:从谨慎和批判性思维看待它(第二部分)
查看>>
苹果公司透露Siri新发音引擎的内部原理
查看>>
GCM 3.0采用类似方式向Android、iOS和Chrome发送消息
查看>>
如何成为一家敏捷银行
查看>>
MongoDB主动撤回SSPL的开源许可申请
查看>>
Oracle在JavaOne上宣布Java EE 8将会延期至2017年底
查看>>
Javascript 深入浅出原型
查看>>