• 技术文章 >后端开发 >PHP7

    怎么安装php7和php5共存

    藏色散人藏色散人2021-09-09 10:19:04转载105

    起步

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

    推荐学习:《PHP7教程

    以上就是怎么安装php7和php5共存的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:segmentfault,如有侵犯,请联系admin@php.cn删除
    专题推荐:php7
    上一篇:看看PHP 7中怎么优化递归的! 下一篇:linux php7安装教程
    线上培训班

    相关文章推荐

    • 看一看!PHP7和5.6的压测对比来了• 数组实现方式:PHP5 VS PHP7• 带你了解PHP7里生成器的新特性• php7怎么安装mysqli扩展

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网