zoukankan      html  css  js  c++  java
  • linux学习(三) -- lnmp环境切换php版本,并安装相应redis扩展

    原创文章,转载请注明出处
     
    我想配置的环境是ubuntu+nginx+mysql+php+redis,其中php装两个版本,php7和php56
    ubuntu+nginx+mysql+php的环境配置教程地址:ubuntu使用(二) -- lnmp环境的配置

    1.让nginx支持不同站点可以选择不同的php版本

    1>创建fastcgi.conf文件
    cd /etc/nginx //进入nginx配置文件夹
    cp fastcgi_params fastcgi.conf //创建fastcgi.conf文件
    vim fastcgi.conf 加入以下参数 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
     
    2>创建php56和php70的配置文件
    touch php56.conf
    vim php56.conf 加入以下内容
    index index.php index.html index.htm;
    location / {
    try_files $uri /index.php$is_args$args;
    }
    location ~ .php$ {
    if ($uri !~* "^/data/"){
    fastcgi_pass 127.0.0.1:9001;
    }
    include fastcgi.conf;
    }
     
    touch php70.conf
    vim php70.conf 加入以下内容
    index index.php index.html index.htm;
    location / {
    try_files $uri /index.php$is_args$args;
    }
    location ~ .php$ {
    if ($uri !~* "^/data/"){
    fastcgi_pass 127.0.0.1:9000;
    }
    include fastcgi.conf;
    }
     
    3>进入虚拟站点配置(以自己的配置为准)
    vim /etc/nginx/sites/nginx.vhost.conf
    加入以下内容
    server {
    listen 8080;
    root /data/php56site/;
    server_name test.php56site.com;
    access_log /var/log/nginx/php56site/access.log;
    error_log /var/log/nginx/php56site/error.log;
    include php56.conf;
    }
    server {
    listen 8081;
    root /data/php70site/;
    server_name test.php70site.com;
    access_log /var/log/nginx/php70site/access.log;
    error_log /var/log/nginx/php70site/error.log;
    include php70.conf;
    }
    4>更改php-fpm的监听端口
    vim /etc/php/5.6/fpm/pool.d/www.conf 更改监听端口为 listen=127.0.0.1:9001
    vim /etc/php/7.0/fpm/pool.d/www.conf 更改监听端口为 listen=127.0.0.1:9000
     
    5>创建相应的文件
    创建php56site的站点文件夹
    mkdir /data/php56site
    cd /data/php56site
    touch index.php
    vim index.php
    并加入以下内容
    <?php
    phpinfo();
     
    创建php56site的日志
    cd /var/log/nginx/
    mkdir php56site
    cd php56site
    touch access.log
    touch error.log
     
    同理创建php70的站点文件夹和日志
     
    6>重启操作
    /etc/init.d/nginx restart
    /etc/init.d/php5.6-fpm restart
    /etc/init.d/php7.0-fpm restart
     
    7>本地hosts文件中加入
    xxx.xxx.xxx.xxxx test.php56site.com
    xxx.xxx.xxx.xxxx test.php70site.com
    网页测试地址
    test.php56site.com:8080/index.php
    test.php70site.com:8081/index.php
     
    如果网页显示出phpinfo的信息,证明成功
     

    2.给php安装phpredis扩展(apt-get并不直接提供各版本phpredis扩展,我们要编译安装)

    1>准备工作:安装扩展需要phpize
    开始安装 apt-get install php5.6-dev
    apt-get install php7.0-dev
    查看phpize的位置 whereis phpize
    发现位置是 /usr/bin/phpize5.6
    /usr/bin/phpize7.0
     
    2>开始安装php5的redis扩展
    1.root@ubuntu:/tmp# wget https://github.com/nicolasff/phpredis/zipball/master -O php-redis.zip
    2.root@ubuntu:/tmp# unzip php-redis.zip
    3.root@ubuntu:/tmp# mv phpredis/ /etc/phpredis5 (phpredis文件夹名以你解压后为准)
    4.root@ubuntu:/tmp#  cd /etc/phpredis5
    5.root@ubuntu://etc/phpredis# /usr/bin/phpize5.6
    6.root@ubuntu://etc/phpredis# ./configure --with-php-config=/usr/bin/php-config5.6
    7.root@ubuntu://etc/phpredis#make && make install
     
    3>开始安装php7的redis扩展
    1.root@ubuntu:/tmp# git clone -b php7 https://github.com/phpredis/phpredis.git
    2.root@ubuntu:/tmp# mv phpredis/ /etc/phpredis7
    3.root@ubuntu:/tmp#  cd /etc/phpredis7
    4.root@ubuntu://etc/phpredis# /usr/bin/phpize7.0
    5.root@ubuntu://etc/phpredis# ./configure --with-php-config=/usr/bin/php-config7.0
    6.root@ubuntu://etc/phpredis#make && make install
     
    4>启动扩展
    修改相应的配置文件:
    vim / etc / php / 5.6 / fpm / php .ini ,在配置文件中添加如下语句:extension=redis.so
    vim / etc / php / 7.0 / fpm / php .ini ,在配置文件中添加如下语句:extension=redis.so
    最后使用命令来重启 PHP 服务:
    /etc/init.d/php5.6-fpm restart
    /etc/init.d/php7.0-fpm restart
     
    5>测试是否成功
    网页测试地址
    test.php56site.com:8080/index.php
    test.php70site.com:8081/index.php
    如果网页phpinfo的信息中有redis项,证明成功
     
    6>因为我php70主要为laraval框架服务,其使用predis扩展,所以我要关闭到phpredis扩展
    vim / etc / php / 7.0 / fpm / php .ini ,找到 extension=redis.so 将其注释掉
    如果你不需要使用predis,请忽略此项
     
     
     
     
  • 相关阅读:
    11.重写、抽象、接口、异常
    3.用户组、指令运行级别、帮助指令、文件目录类(一)
    2.vi和vim编辑器、vi和vim三种模式、vi和vim快捷键、关机、重启命令、用户管理
    1.VM和Linux系统(centos)安装、linux目录结构、远程登录到Linux服务器、远程上传下载文件xftp
    10.函数、流程控制
    9.变量、存储过程
    8.事务、视图
    7.库和表的管理、常见数据类型、常见约束、标识符
    CH6801 棋盘覆盖(二分图最大匹配)
    洛谷P1525 关押罪犯(二分图判定+二分)
  • 原文地址:https://www.cnblogs.com/redirect/p/6486356.html
Copyright © 2011-2022 走看看