好得很程序员自学网
  • 首页
  • 后端语言
    • C#
    • PHP
    • Python
    • java
    • Golang
    • ASP.NET
  • 前端开发
    • Angular
    • react框架
    • LayUi开发
    • javascript
    • HTML与HTML5
    • CSS与CSS3
    • jQuery
    • Bootstrap
    • NodeJS
    • Vue与小程序技术
    • Photoshop
  • 数据库技术
    • MSSQL
    • MYSQL
    • Redis
    • MongoDB
    • Oracle
    • PostgreSQL
    • Sqlite
    • 数据库基础
    • 数据库排错
  • CMS系统
    • HDHCMS
    • WordPress
    • Dedecms
    • PhpCms
    • 帝国CMS
    • ThinkPHP
    • Discuz
    • ZBlog
    • ECSHOP
  • 高手进阶
    • Android技术
    • 正则表达式
    • 数据结构与算法
  • 系统运维
    • Windows
    • apache
    • 服务器排错
    • 网站安全
    • nginx
    • linux系统
    • MacOS
  • 学习教程
    • 前端脚本教程
    • HTML与CSS 教程
    • 脚本语言教程
    • 数据库教程
    • 应用系统教程
  • 新技术
  • 编程导航
    • 区块链
    • IT资讯
    • 设计灵感
    • 建站资源
    • 开发团队
    • 程序社区
    • 图标图库
    • 图形动效
    • IDE环境
    • 在线工具
    • 调试测试
    • Node开发
    • 游戏框架
    • CSS库
    • Jquery插件
    • Js插件
    • Web框架
    • 移动端框架
    • 模块管理
    • 开发社区
    • 在线课堂
    • 框架类库
    • 项目托管
    • 云服务

当前位置:首页>后端语言>PHP
<tfoot draggable='sEl'></tfoot>

lnmp多个php版本 php有几个版本

很多站长朋友们都不太清楚lnmp多个php版本,今天小编就来给大家整理lnmp多个php版本,希望对各位有所帮助,具体内容如下:

本文目录一览: 1、 Linux CentOS安装PHP多版本同时运行 2、 Linux系统中设置多版本PHP共存配合Nginx服务器使用 3、 一个系统可以两个版本的php并存吗 4、 如何在linux下安装多个不同版本的PHP 5、 如何设置lnmp可以切换php版本 Linux CentOS安装PHP多版本同时运行

mkdir -p /lnmp/php74

wget

tar -zxvf php-7.4.33

cd ./php-7.4.33

./configure --prefix=/lnmp/php74 --enable-fpm --with-mysqli --with-curl --with-pdo_mysql --with-pdo_sqlite --enable-mysqlnd --enable-mbstring --with-gd --with-freetype

(7.4之前的版本freetype是 --with-freetype-dir )

make

make install

cp php.ini-development /lnmp/php74/lib/php.ini

cd /lnmp/php74/etc

mv php-fpm.conf.default php-fpm.conf

mv php-fpm.d/ php-fpm.d/

cd /lnmp/php71/etc/php-fpm.d

vim

cgi.fix_pathinfo=0

/lnmp/php71/sbin/php-fpm

ps aux|grep php

vim /etc/init.d/php71-fpm

chmod a+x /etc/init.d/php71-fpm

chkconfig --add php71-fpm

service php71-fpm start

service php71-fpm restar

service php71-fpm stop

Linux系统中设置多版本PHP共存配合Nginx服务器使用

应用环境

LNMP的环境,当前PHP版本5.3.8,遇到一个应用需求只支持PHP

5.2.x,又希望保持现有应用还是用PHP

5.3.8。也就是说需要两个版本的PHP同时存在,供nginx根据需要调用不同版本。

思路

Nginx是通过PHP-FastCGI与PHP交互的。而PHP-FastCGI运行后会通过文件、或本地端口两种方式进行监听,在Nginx中配置相应的FastCGI监听端口或文件即实现Nginx请求对PHP的解释。

既然PHP-FastCGI是监听端口和文件的,那就可以让不同版本的PHP-FastCGI同时运行,监听不同的端口或文件,Nginx中根据需求配置调用不同的PHP-FastCGI端口或文件,即可实现不同版本PHP共存了。

配置记录

下面记录简单的配置流程,基于已经安装了lnmp的debian环境。当前版本的PHP是5.3.8,位于/usr/local/php。

1.下载PHP-5.2.14及相关的FPM、autoconf组件:

mkdir

~/php5.2

cd

~/php5.2

wget

-c

wget

-c

2.解压PHP-5.2.14,并打上PHP-FPM的补丁:

tar

zxvf

php-5.2.14.tar.gz

gzip

-cd

php-5.2.14-fpm-0.5.14.diff.gz

|

patch

-d

php-5.2.14

-p1

3.如果你已经通过lnmp安装,应该已经安装好了autoconf,如果没有,请自行下载并编译autoconf-2.13,然后设置autoconf环境变量:

export

PHP_AUTOCONF=/usr/local/autoconf-2.13/bin/autoconf¬

export

PHP_AUTOHEADER=/usr/local/autoconf-2.13/bin/autoheader

3.编译安装PHP-5.2.14在新的路径(/usr/local/php-5.2.14)下,注意–prefix、–with-config-file-path的路径,并且打开fastcgi和fpm选项:

cd

php-5.2.14/

./buildconf

--force

./configure

--prefix=/usr/local/php-5.2.14

--with-config-file-path=/usr/local/php-5.2.14/etc

--with-mysql=/usr/local/mysql

--with-mysqli=/usr/local/mysql/bin/mysql_config

--enable-fastcgi

--enable-fpm

make

ZEND_EXTRA_LIBS='-liconv'

make

install

4.设置/usr/local/php-5.2.14/etc/php-fpm.conf,监听端口:

<value

name="listen_address">127.0.0.1:9001</value>

或者监听文件:

<value

name="listen_address">/path/to/unix/socket</value>

其他参数根据服务器环境和需求自行定制。

5.启动php-fpm,以后可以通过php-fpm进行管理:

/usr/local/php-5.2.14/sbin/php-fpm

start

字php5.3.3后,php已经将php-fpm继承到php中,而且内置的php-fpm默认不支持(start|stop|reload)的平滑启动参数,需要使用官方源代码中提供的启动脚本来控制:

cp

-f

(php

-5.3.x-source-dir)/sapi/fpm/init.d.php-fpm

/etc/init.d/php-fpm

chmod

755

/etc/init.d/php-fpm

/etc/init.d/php-fpm

start

php-fpm支持的操作:

start,启动PHP的FastCGI进程。

stop,强制终止PHP的FastCGI进程。

quit,平滑终止PHP的FastCGI进程。

restart,

重启PHP的FastCGI进程。

reload,

重新加载PHP的php.ini。

logrotate,

重新启用log文件。

5.3.3的php-fpm脚本支持的操作:start|stop|force-quit|restart|reload|status

6.配置好PHP-5.2.14的php.ini,重新加载生效:

vi

/usr/local/php-5.2.14/etc/php.ini

/usr/local/php-5.2.14/sbin/php-fpm

reload

7.修改nginx配置,对需要的服务配置使用PHP-5.2.14:

location

~

.*.(php|php5)?$

{

fastcgi_pass

127.0.0.1:9001;

fastcgi_index

index.php;

include

fcgi.conf;

}

8.记录一下自己编译php5.5.10使用的配置

./configure

--prefix=/usr/local/php-5.5.10

--with-config-file-path=/usr/local/php-5.5.10/etc

--with-mysql=mysqlnd

--with-mysqli=mysqlnd

--with-bz2

--with-curl=/usr/bin

--enable-ftp

--enable-sockets

--disable-ipv6

--with-gd

--with-jpeg-dir=/usr/local

--with-png-dir=/usr/local

--with-freetype-dir=/usr/local

--enable-gd-native-ttf

--with-iconv-dir=/usr/local

--enable-mbstring

--enable-calendar

--with-gettext

--with-libxml-dir=/usr/local

--with-zlib

--with-pdo-mysql=mysqlnd

--enable-dom

--enable-xml

--enable-fpm

--with-libdir=lib64

--with-mcrypt=/usr/bin

--enable-zip

--enable-soap

--enable-mbstring

--with-gd

--with-openssl

--enable-pcntl

--with-xmlrpc

--enable-opcache

一个系统可以两个版本的php并存吗

多版本共存且同时运行,你可以用PHPWAMP8.8.8.8IN版本集成环境

PHPWAMP支持iis、apache、nginx等web服务器,系统环境受损也能正常运行!

并全部支持php多版本同时运行,无限自定义mysql、php版本,同时运行N个php版本都没问题。

-------以下内容摘自今日头条程序员IT快报新闻--------------

PHPWAMP无视VC运行库,无视系统DLL是否完整是否受损,无视系统原因造成的各种PHP环境运行障碍

在电脑系统缺失必备组件或DLL受损的情况下依然能正常运行,不用安装vc,不用在乎系统dll是否完整

数据库文件太大懒得转移?Mysql自定义的妙用,物理转移其他环境mysql版本,轻松实现网站搬家!

Mysql自定义功能可一键吸收xampp、phpstudy、wampserver、apmserv等所有PHP集成环境的Mysql数据库,也可以把Mysql官方全部历史版本收纳,随意切换任何Mysql历史版本,常用工具可以强行修改所有环境的Mysql数据库密码。

升级的“强制清除环境阻碍”功能是历史版本中最简单粗暴的,一键轰掉系统占用80端口以及系统引起的各种异常

三大主流Web服务器分别带有功能强大的站点管理(右键功能更符合UEO)

iis站点一键配置,支持无限个PHP版本同时运行,无限自定义mysqlphp版本,无视VC等系统Dll依赖。

Nginx站点一键配置,支持无限个PHP版本同时运行,无限自定义mysqlphp版本,无视VC等系统Dll依赖。

Apache站点一键配置,支持无限个PHP版本同时运行,无限自定义mysqlphp版本,无视VC等系统Dll依赖。

如何在linux下安装多个不同版本的PHP

Linux下部署php多版本共存

背景说明

自php7问世,身为最新版本控的我马上升级体验,但是由于服务器上还有旧程序在运行,只好部署一个php多版本共存环境。

现有环境是lnmp

- CentOS 6.7

- nginx 1.10.1

- mariadb-10.0.26

- php 7.0.8

为了更好兼容旧的php程序,推荐使用5.4.45. 主要是兼容mysql扩展。

开始安装

首先要下载php-5.4.45.tar.gz源码包。

通过源码安装

# tar xzvf php-5.4.45.tar.gz

# cd php-5.4.45

# ./configure --prefix=/usr/local/php54 --with-config-file-path=/usr/local/php54/etc --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir --with-freetype-dir=/usr/local/freetype --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring --with-mcrypt --enable-ftp --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --with-gettext --disable-fileinfo --enable-intl --with-xsl

# make ZEND_EXTRA_LIBS='-liconv'

# make install

# cp php.ini-production /usr/local/php/etc/php.ini

------------------------------------------------------------------------------------------------

php.ini 配置

post_max_size = 50M

upload_max_filesize = 50M

date.timezone = PRC

short_open_tag = On

cgi.fix_pathinfo=0

max_execution_time = 300

disable_functions=passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,popen,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server

------------------------------------------------------------------------------------------------

php-fpm.conf 配置

------------------------------

# vim /usr/local/php/etc/php-fpm.conf1

[global]

pid = /usr/local/php54/var/run/php-fpm.pid

error_log = /usr/local/php54/var/log/php-fpm.log

log_level = notice

[www]

listen = /tmp/php54-cgi.sock

listen.backlog = -1

listen.allowed_clients = 127.0.0.1:9001

listen.owner = www

listen.group = www

listen.mode = 0666

user = www

group = www

pm = dynamic

pm.max_children = 40

pm.start_servers = 20

pm.min_spare_servers = 20

pm.max_spare_servers = 40

request_terminate_timeout = 100

request_slowlog_timeout = 0

slowlog = var/log/slow.log

----------------------------------------------------------------------------------

启动 php-fpm

# cp sapi/fpm/init.d.php-fpm /etc/init.d/php54-fpm

# chmod +x /etc/init.d/php54-fpm

# /etc/init.d/php54-fpm start

-------------------------------------------------------------------------------------------

修改nginx配置,对需要的服务配置使用php-5.4.45

location ~ [^/]\.php(/|$)

{

try_files $uri =404;

fastcgi_pass unix:/tmp/php54-cgi.sock;

fastcgi_index index.php;

include fastcgi.conf;

}

----------------------------------------------------------------------------------------

配置php-5.4.45 的php54-fpm 开机自动启动

# chkconfig --add php54-fpm

# chkconfig php54-fpm on

如何设置lnmp可以切换php版本

1.说明:在linux下安装lnmp的默认php版本只能使用一个版本,如果有些网站需要低版本5.2或者高版本,那么如何做呢,

2.Lnmp安装时候默认选择了php5.3,但是其中某个网站需要php5.5

3.编译安装php5.5

(a)安装必要软件

rpm -ivh

yum groupinstall 'Development Tools'

yum install libmhash-devel

yum install libmhash

yum install libicu-devel

yum -y install krb5*

yum install -y gcc gcc-c++ make gmp-devel libc-client-devel zlib zlib-devel pcre pcre-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers

(b)安装libiconv

wget 希望能帮到你,我现在后盾人平台自己学习呢,加油吧(~Q~;)

关于lnmp多个php版本的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。

查看更多关于lnmp多个php版本 php有几个版本的详细内容...

声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did225801
更新时间:2023-05-11   阅读:25次

上一篇: php传递数组到js php数组转js数组

下一篇:php的宠物商城 整套宠物商店app界面

最新资料更新

  • 1.学php学什么专业 学php可以干什么工作
  • 2.php变量内存溢出 php 内存限制
  • 3.php常量乱码 phpstorm乱码
  • 4.php下载控件 php下载器
  • 5.php数据库对象 php针对数据库的查询函数是
  • 6.php项目补充redis php+redis
  • 7.phpvc6vc9的简单介绍
  • 8.php短信被刷 php防止短信被刷
  • 9.php读取pdf内容 php读取文本文件
  • 10.phphuoqv多选 php选择语句
  • 11.怎php计算学生成绩 php输入成绩判断成绩等级
  • 12.射洪php招聘 射洪平台公司招聘
  • 13.php蓝色的代码 html颜色代码
  • 14.腾讯php招聘 招聘 腾讯
  • 15.php基于iis php+iis
  • 16.php人员查询系统 php信息查询系统
  • 17.原生php提交form php原生开发的好处
  • 18.php资源扫描教程 php识别二维码内容源码
  • 19.php变量获取图片 php调用图片
  • 20.php获取阴历 php获取日期

CopyRight:2016-{hedonghua:year}{hedonghua:sitegs} 备案ICP:湘ICP备09009000号-16 {hedonghua:sitejym}
本站资讯不构成任何建议,仅限于个人分享,参考须谨慎!
本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。

网站内容来源于网络分享,如有侵权发邮箱到:kenbest@126.com,收到邮件我们会即时下线处理。
网站框架支持:HDHCMS   51LA统计 百度统计
Copyright © 2018-2025 「好得很程序员自学网」
[ SiteMap ]