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 相关文章推荐
提问的智慧(2)
Oct 09 PHP
session在php5.3中的变化 session_is_registered() is deprecated in
Nov 12 PHP
PHP中配置IIS7实现基本身份验证的方法
Sep 24 PHP
PHP中的Session对象如何使用
Sep 25 PHP
学习php设计模式 php实现抽象工厂模式
Dec 07 PHP
php实现smarty模板无限极分类的方法
Dec 07 PHP
基于PHPexecl类生成复杂的报表表头示例
Oct 14 PHP
PHP AjaxForm提交图片上传并显示图片源码
Nov 29 PHP
php mysql操作mysql_connect连接数据库实例详解
Dec 26 PHP
PHP正则匹配反斜杠'\'和美元'$'的方法
Feb 08 PHP
Win7环境下Apache连接MySQL提示连接已重置的解决办法
May 09 PHP
详解Laravel制作API接口
May 31 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
第十节 抽象方法和抽象类 [10]
2006/10/09 PHP
PHP整合PayPal支付
2015/06/11 PHP
PHP中异常处理的一些方法整理
2015/07/03 PHP
PHP读取Excel类文件
2017/05/15 PHP
JavaScript实现网页图片等比例缩放实现代码及调用方式
2013/02/25 Javascript
点击显示指定元素隐藏其他同辈元素的方法
2014/02/19 Javascript
jQuery中wrapInner()方法用法实例
2015/01/16 Javascript
微信JS接口大全
2016/08/25 Javascript
bootstrap基础知识学习笔记
2016/11/02 Javascript
浅谈jQuery中Ajax事件beforesend及各参数含义
2016/12/03 Javascript
JS和jQuery通过this获取html标签中的属性值(实例代码)
2017/09/11 jQuery
jQuery实现IE输入框完成placeholder标签功能的方法
2017/09/20 jQuery
微信小程序基于本地缓存实现点赞功能的方法
2017/12/18 Javascript
vue中mint-ui的使用方法
2018/04/04 Javascript
JavaScript控制浏览器全屏显示简单示例
2018/07/05 Javascript
Vue如何实现响应式系统
2018/07/11 Javascript
js实现敏感词过滤算法及实现逻辑
2018/07/24 Javascript
vue组件间的参数传递实例详解
2019/04/26 Javascript
layer弹出层自定义提交取消按钮的例子
2019/09/10 Javascript
LayUi使用switch开关,动态的去控制它是否被启用的方法
2019/09/21 Javascript
深入理解 ES6中的 Reflect用法
2020/07/18 Javascript
Python多线程编程简单介绍
2015/04/13 Python
好的Python培训机构应该具备哪些条件
2018/05/23 Python
python读取excel指定列数据并写入到新的excel方法
2018/07/10 Python
python format 格式化输出方法
2018/07/16 Python
Python实现合并excel表格的方法分析
2019/04/13 Python
PyTorch的自适应池化Adaptive Pooling实例
2020/01/03 Python
Python爬虫爬取、解析数据操作示例
2020/03/27 Python
eBay爱尔兰站:eBay.ie
2019/08/09 全球购物
项目考察欢迎辞
2014/01/17 职场文书
医学类个人求职信范文
2014/02/05 职场文书
2014乡镇干部对照检查材料思想汇报
2014/09/26 职场文书
健康状况证明书
2014/11/26 职场文书
会计试用期自我评价
2015/03/10 职场文书
在Centos 8.0中安装Redis服务器的教程详解
2022/03/21 Redis
Python+DeOldify实现老照片上色功能
2022/06/21 Python