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,请忽略此项
     
     
     
     
  • 相关阅读:
    MEP工作流程
    一盘很大的棋
    老人棒子鸡
    REVIT多专业协同设计
    不做没有理想的咸鱼
    卫生间排风设计规范
    如何时刻保持在目标的正确轨道上
    OGame殖民
    OGame舰队保护(FleetSave, FS)
    在局域网内架ESS3.0升级服务器
  • 原文地址:https://www.cnblogs.com/redirect/p/6486356.html
Copyright © 2011-2022 走看看