博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Lnmp 配置多 PHP 开发环境
阅读量:5756 次
发布时间:2019-06-18

本文共 2675 字,大约阅读时间需要 8 分钟。

在实际项目中,有时因为老项目的原因而不得不在同一台服务器配置多个 php 环境,本文为配置多 PHP 环境教程

假设:已有 php7 的环境,需要配置一个 PHP5 的环境

编译安装 php-5.6.27

  1. 下载解压
    sudo wget  http://au1.php.net/get/php-5.6.27.tar.gz/from/this/mirror -O php-5.6.27sudo tar -zxvf php-5.6.27 && cd php-5.6.27
  2. 配置
    sudo ./configure --prefix=/usr/local/php5 \--with-config-file-path=/usr/local/php5/etc \--with-iconv-dir=/usr/local/lib \--enable-fpm \--enable-pcntl \--enable-mysqlnd \--with-pdo-mysql=mysqlnd \--with-zlib \--enable-zip \--with-gd \--with-curl=/usr/bin/curl \--with-mysqli \--with-pdo-mysql
  3. 编译 && 安装
    sudo make && sudo make install
  4. 处理配置文件
    sudo cp /usr/local/src/php-5.6.27/php.ini-development  /usr/local/php5/etc/php.inisudo cp /usr/local/php5/etc/php-fpm.conf.default /usr/local/php5/etc/php-fpm.conf

    # 修改 php.ini

    sudo vim /usr/local/php5/etc/php.inicgi.fix_pathinfo=0;

    # 修改 php-fpm.conf

    user=wwwgroup=wwwlisten.owner = wwwlisten.group = wwwlisten.mode = 0660listen=/var/php/php5-cgi.sock

    # 创建 sock 文件

    sudo touch /var/php/php5-cgi.sock

# 链接 php 指令

sudo ln -s /usr/local/php5/bin/php /usr/bin/php5
  1. 配置 php5-fpm 服务管理
    sudo cp /usr/local/src/php-5.6.27/sapi/fpm/init.d.php-fpm /etc/init.d/php5-fpmsudo chmod +x /etc/init.d/php5-fpmsudo systemctl unmask php5-fpm.service  # 使 php5-fpm 服务生效sudo sysv-rc-conf php5-fpm on # 设置开机启动
  2. 服务管理

    service php5-fpm statusservice php5-fpm startservice php5-fpm stopservice php5-fpm restartservice php5-fpm reloadservice php5-fpm helpservice php5-fpm configtest

    7.配置 nginx server

    sudo touch /var/php/php5-fpm.socksudo vim /usr/local/nginx/conf/vhosts/shop.mt.conf
    server {    listen       80;    server_name  shop.mitao.me;    #server_name  10.1.16.162;    charset utf-8;    index index.php index.html index.htm;    #access_log  logs/host.access.log  main;    root   /mnt/d/xmt-shop;    if (!-e $request_filename) {       rewrite  ^(.*)$  /index.php?s=/$1  last;       break;    }    #error_page  404              /404.html;    error_page   500 502 503 504  /50x.html;            location = /50x.html {            root   html;    }    location ~ \.php$ {        #fastcgi_pass   127.0.0.1:9000;        fastcgi_pass unix:/var/php/php5-cgi.sock;        fastcgi_index  index.php;        include        fastcgi_params;        fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;        fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;    }}

    8.分别启动 php5 和 php7

    sudo service php-fpm startsudo service php5-fpm startps -ef|grep php-fpm

总结:其实多 PHP 环境配置的关键点就是,通过配置 nginx http server 项,

location ~ .php$ {
fastcgi_pass unix:/var/php/php-cgi.sock
# fastcgi_pass unix:/var/php/php5-cgi.sock
}
即通过监听不同的 监听socket套接字 来区分,同时也需要在 php-fpm.conf 配置对应 连接socket 套接字

转载于:https://blog.51cto.com/12750968/2322967

你可能感兴趣的文章
使用sstream读取字符串中的数字(c++)
查看>>
如何提高还在用window系统的编码硬效率
查看>>
es6常用的语法(一)
查看>>
一款基于Handler的Android定时器与倒计时器
查看>>
前端知识点总结——AJAX
查看>>
300行kotlin带你玩儿转微信跳一跳
查看>>
使用Vagrant搭建Centos虚拟机
查看>>
Vue系列(三):组件及数据传递、路由、单文件组件、vue-cli脚手架
查看>>
从零开始做Vue前端架构(4)
查看>>
2017-12-21 Android runtime permission 收尾1
查看>>
在真机和模拟器中使用 devtools 调试(iOS Web版)
查看>>
拓扑排序原理分析及js实现
查看>>
gitbash-coding 代码仓库 代码备份 命令使用
查看>>
JS 作用域 var与let 区别
查看>>
基于Vue & SVG 的 icon 解决方案
查看>>
Java嵌套循环中容易出现的问题
查看>>
python入门到实践-字符串的使用
查看>>
Vue2.5+ Typescript 引入全面指南
查看>>
ES6~你跟箭头函数升华之路
查看>>
Windows和Linux容器异同大起底
查看>>