原创文章,转载请注明出处
我想配置的环境是ubuntu+nginx+mysql+php+redis,其中php装两个版本,php7和php56
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,请忽略此项
- lnmp环境切换php版本,并安装相应redis扩展
ubuntu+nginx+mysql+php+redis,其中php装两个版本,php7和php56 1.让nginx支持不同站点可以选择不同的php版本 1>创建fastcgi.conf文件 ...
- Linux学习第二步(Java环境安装)
jdk版本:jdk-8u131-linux-x64.rpm 注:以下操作在root用户或具有root权限的用户下操作 一.将 dk-8u131-linux-x64.rpm拷贝到/home目录下 cp ...
- Linux系统之路——python多版本共存问题(ps:自行切换python版本,pip安装遇到的一些问题)
经常遇到这样的情况: 系统自带的Python是2.6,自己需要Python 2.7中的某些特性: 系统自带的Python是2.x,自己需要Python 3.x: 此时需要在系统中安装多个Python, ...
- zabbix学习(一)——LNMP环境搭建及zabbix安装
第一部分:LNMP环境搭建 一.环境说明: OS: centos7.6_x64nginx:nginx-1.16.0php: php-7.1.11mysql:mysql-5.6.44 zabbi ...
- CentOS LNMP环境搭建 各版本
我们先下载系统包. 以下centos6.5 X64系统 进行演示.本环境适应Centos5.x CentOs6.x Centos7.x 32和64版本.如有错误请回复本文主要安装代码汇总 [PH ...
- linux搭建的LNMP环境下的mysql授权远程连接
用phpstudy搭建的lnmp环境下mysql授权远程连接 简单高效 这是因为mysql 里的优先级不是所有人(提前检查防火墙是关闭状态)1.使用phpstudy安装的mysql没有放置到可以直接调 ...
- Linux学习之CentOS--CentOS6.4下Mysql数据库的安装与配置【转】
如果要在Linux上做j2ee开发,首先得搭建好j2ee的开发环境,包括了jdk.tomcat.eclipse的安装(这个在之前的一篇随笔中已经有详细讲解了Linux学习之CentOS(七)--C ...
- Linux下Java开发环境搭建—CentOS下Mysql安装教程
本人学习Linux时使用的是CentOs5.5版本,在该环境中,Mysql的安装方法有很多种,下面我只讲我这次成功了的方法,作为一个记录,供大家参考,同时给自己做一个笔记. MySQL下载 1.进入网 ...
- Linux从入门到放弃、零基础入门Linux(第三篇):在虚拟机vmware中安装linux(二)超详细手把手教你安装centos6分步图解
一.继续在vmware中安装centos6.9 本次安装是进行最小化安装,即没有图形化界面的安装,如果是新手,建议安装带图形化界面的centos, 具体参考Linux从入门到放弃.零基础入门Linux ...
随机推荐
- Catch the moments of your life. Catch them while you're young and quick.
Catch the moments of your life. Catch them while you're young and quick.趁你还年轻利落,把握住生活中的美好瞬间吧!
- visual studio2010中C#生成的,ArcGIS二次开发的basetool的dll,注册为COM组件tlb文件,并在arcmap中加载使用
写了个标题好长啊~~~~ 这两天又认识了一个新玩意,记录一下下,啦啦啦~~~~~ 话说,认识arcgis快十年了,从桌面版到engine的二次开发,其实不过才认识到它的冰山一角, 它总是能带来很多还未 ...
- Python开发环境Wing IDE搜索工具介绍
Wing IDE编辑器的搜索工具提供了一个基于友好GUI的搜索和替换工具. 某些情况下搜索可能会跨越整个文件,也有可能被限制到当前所选择的区域:可以区分大小写,也可以设置为不区分:可以被限制为只匹配整 ...
- MVC文件下载和webform也能使用的下载方法
public ActionResult Index() { DownloadMethod("text/plain", "C:/Users/sunny/Pictures/S ...
- find - 递归地在层次目录中处理文件
总览 SYNOPSIS find [path...] [expression] 描述 DESCRIPTION 这个文档是GNU版本 find 命令的使用手册. find 搜索目录树上的每一个文件名,它 ...
- PHP读取文件的常见方法
整理了一下PHP中读取文件的几个方法,方便以后查阅. 1.fread string fread ( int $handle , int $length ) fread() 从 handle 指向的文件 ...
- Problem D: 双向冒泡排序
Problem D: 双向冒泡排序 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 447 Solved: 197[Submit][Status][We ...
- js转换时间戳成日期格式
<script> function getLocalTime(nS) { return new Date(parseInt(nS) * 1000).toLocaleString().rep ...
- Bootstrap历练实例:弹出框(popover)事件
事件 下表列出了弹出框(Popover)插件中要用到的事件.这些事件可在函数中当钩子使用. 事件 描述 实例 show.bs.popover 当调用 show 实例方法时立即触发该事件. $('#my ...
- Bootstrap历练实例:popover插件中的方法
方法 下面是一些弹出框(Popover)插件中有用的方法: 方法 描述 实例 Options: .popover(options) 向元素集合附加弹出框句柄. $().popover(options) ...