资讯专栏INFORMATION COLUMN

安装php7,与php5共存

TalkingData / 1662人阅读

摘要:安装源码在下载并解压。为不与冲突,文件夹都用,安装过程中报错的安装响应的依赖。启动中途如遇到日志文件路径不存在就手动创建并给予写的权限。遇到这个错误时,要添加个组再重新启动。的配置这是访问文件是变成下载文件,因为并未配置响应处理。

起步

之前在服务器搭建了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;
        }

Thank you for using PHP.

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/21826.html

相关文章

  • lnmp 多个php版本共存

    摘要:多个版本共存本例系统已通过安装好了,所以后面手动安装。但是为什么需要安装多个版本的发挥你的小宇宙想象一下吧。 lnmp 多个php版本共存 本例(ubuntu系统)已通过lnmp安装好php7.1了,所以后面手动安装php5.6.36。但是为什么需要安装多个版本的PHP?发挥你的小宇宙想象一下吧。 安装PHP5.6.36 下载php5.6.36 wget http://cn.php.n...

    yeooo 评论0 收藏0
  • 虚拟机上Centos7开发环境搭建(编译安装LNMP,多版本PHP共存,PHP扩展安装

    摘要:安装系统本次安装的是的最小化版本,以下操作在用户下进行。在搭建完该环境后,笔者使用作为开发,配置使其可以直接调试虚拟机上的代码即开发环境下代码是运行在虚拟机上的。通过该方法,可以最大程度地确保开发环境与生产环境的一致性。 安装系统 本次安装的是Centos7.3的最小化版本,以下操作在root用户下进行。在搭建完该环境后,笔者使用phpstorm作为开发ide,配置phpstorm使其...

    zhangke3016 评论0 收藏0
  • Centos多版本php共存

    摘要:需求场景服务器有几个较老的应用占用了,且版本不可向上兼容,新的项目需要高版本的才能支持。实现其实比较简单,可以指定端口默认,修改指向对应的端口即可。这里记录种不同的安装方式一种是通过安装,另外一种是从官网下载源码编译安装。 需求场景:服务器有几个较老的应用占用了php,且版本不可向上兼容,新的项目需要高版本的php才能支持。 实现其实比较简单,php-fpm可以指定端口(默认9000)...

    wmui 评论0 收藏0
  • 搭建最新的nginx+php+mysql

    摘要:拿到一个全新的服务器,首先要更新系统软件安装源管理工具添加和的安装源这个是这个是这个通常是最新版本,目前是建议都安装此版本完成后,可以利用包名搜索相关包如果出现如下错误提示运行如下命令即可注 1、拿到一个全新的Ubuntu 16.04服务器,首先要更新系统软件 apt-get update apt-get upgrade2、安装apt源管理工具 apt-get instal...

    phodal 评论0 收藏0

发表评论

0条评论

TalkingData

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<