nginx下安装php7+php5


Posted in PHP onJuly 31, 2016

起步

之前在服务器搭建了lamp环境,想换用性能更强的nginx作为服务器软件,又想将php5升级为php7.

安装nginx无需赘述:sudo apt-get install nginx,启动ng前修改apache的端口。

安装php7

源码在http://php.net/downloads.php 下载,并解压。

# cd php7***

# ./configure --prefix=/usr/local/php7 --with-config-file-path=/usr/local/php7/etc --with-mcrypt=/usr/include --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-gd --with-iconv --with-zlib --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --enable-mbregex --enable-fpm --enable-mbstring --enable-ftp --enable-gd-native-ttf --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --enable-session --with-curl --with-jpeg-dir --with-freetype-dir --enable-opcache
# make

# make install

为不与5冲突,文件夹都用php7,安装过程中报错的安装响应的依赖。

对接nginx

nginx本身不能处理php脚本,需要发给php解释器处理。nginx一般是把请求发fastcgi管理进程处理,fascgi管理进程选择cgi子进程处理结果并返回被nginx。

# cp php.ini-production /usr/local/php7/etc/php.ini

# cp sapi/fpm/init.d.php-fpm /etc/init.d/php7-fpm

# chmod +x /etc/init.d/php7-fpm

# cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf

# cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf

启动php-fpm

# service php7-fpm start

中途如遇到日志文件路径不存在就手动创建并给予写的权限。

# service php7-fpm start

Starting php-fpm [07-Apr-2016 11:16:11] ERROR: [pool www] cannot get gid for group 'nobody'

[07-Apr-2016 11:16:11] ERROR: FPM initialization failed

 failed

遇到这个错误时,要添加个nobody组groupadd nobody再重新启动。

nginx的配置

这是访问php文件是变成下载文件,因为ng并未配置响应处理。

location ~ \.php$ {
      fastcgi_pass  127.0.0.1:9000;
      fastcgi_index index.php;
      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
      include    fastcgi_params;
    }
PHP 相关文章推荐
PHP调用三种数据库的方法(1)
Oct 09 PHP
PHP版自动生成文章摘要
Jul 23 PHP
《PHP编程最快明白》第六讲:Mysql数据库操作
Nov 01 PHP
php 数据库字段复用的基本原理与示例
Jul 22 PHP
php用header函数实现301跳转代码实例
Nov 25 PHP
CodeIgniter中使用cookie的三种方式详解
Jul 18 PHP
ThinkPHP实现非标准名称数据表快速创建模型的方法
Nov 29 PHP
php中的动态调用实例分析
Jan 07 PHP
在WordPress的文章编辑器中设置默认内容的方法
Dec 29 PHP
Netbeans 8.2将支持PHP7 更精彩
Jun 13 PHP
微信红包随机生成算法php版
Jul 21 PHP
解决PHP上传非标准格式的图片pjpeg失败的方法
Mar 12 PHP
header与缓冲区之间的深层次分析
Jul 30 #PHP
laravel学习教程之关联模型
Jul 30 #PHP
laravel学习教程之存取器
Jul 30 #PHP
thinkphp表单上传文件并将文件路径保存到数据库中
Jul 28 #PHP
thinkphp验证码的实现(form、ajax实现验证)
Jul 28 #PHP
Thinkphp3.2.3分页使用实例解析
Jul 28 #PHP
thinkphp3.2.3 分页代码分享
Jul 28 #PHP
You might like
PHP安装全攻略:APACHE
2006/10/09 PHP
深入PHP内存相关的功能特性详解
2013/06/08 PHP
PHP OPP机制和模式简介(抽象类、接口和契约式编程)
2014/06/09 PHP
PHP函数extension_loaded()用法实例
2015/01/19 PHP
jquery判断字符输入个数(数字英文长度记为1,中文记为2,超过长度自动截取)
2010/10/15 Javascript
2012年开发人员的16款新鲜的jquery插件体验分享
2012/12/28 Javascript
正负小数点后两位浮点数实现原理及代码
2013/09/06 Javascript
js形成页面的一种遮罩效果实例代码
2014/01/04 Javascript
防止jQuery ajax Load使用缓存的方法小结
2014/02/22 Javascript
JS对img标签进行优化使用onerror显示默认图像
2014/04/24 Javascript
jquery中 $.expr使用实例介绍
2014/06/09 Javascript
js实现界面向原生界面发消息并跳转功能
2016/11/22 Javascript
JavaScript函数基础详解
2017/02/03 Javascript
在 Angular 中实现搜索关键字高亮示例
2017/03/21 Javascript
原生js实现简单的链式操作
2017/07/04 Javascript
vue axios用法教程详解
2017/07/23 Javascript
webpack本地开发环境无法用IP访问的解决方法
2018/03/20 Javascript
微信小程序实现聊天对话(文本、图片)功能
2018/07/06 Javascript
Vuex 使用及简单实例(计数器)
2018/08/29 Javascript
详细分析Node.js 多进程
2020/06/22 Javascript
vue点击标签切换选中及互相排斥操作
2020/07/17 Javascript
通过实例解析JavaScript常用排序算法
2020/09/02 Javascript
[15:23]教你分分钟做大人:虚空假面
2014/10/30 DOTA
[00:43]DOTA2小紫本全民票选福利PA至宝全方位展示
2014/11/25 DOTA
[03:17]2016完美“圣”典风云人物:冷冷专访
2016/12/08 DOTA
Python pickle模块用法实例分析
2015/05/27 Python
python获得文件创建时间和修改时间的方法
2015/06/30 Python
python中将函数赋值给变量时需要注意的一些问题
2017/08/18 Python
简单实现python画圆功能
2018/01/25 Python
python实现京东秒杀功能
2018/07/30 Python
python 实现图片旋转 上下左右 180度旋转的示例
2019/01/24 Python
大学毕业生通用自我评价
2014/01/05 职场文书
2014年旅游局法制宣传日活动总结
2014/11/01 职场文书
优秀党员个人总结
2015/02/14 职场文书
2015年暑期社会实践活动总结
2015/03/27 职场文书
opencv深入浅出了解机器学习和深度学习
2022/03/17 Python