返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >如何实现CentOS与Apache连接的PHP多版本共存
  • 106
分享到

如何实现CentOS与Apache连接的PHP多版本共存

2023-06-05 20:06:28 106人浏览 薄情痞子
摘要

这篇文章给大家介绍如何实现Centos与Apache连接的PHP多版本共存,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。CentOS下与Apache连接的php多版本共存方案实现,针对mod_fcgi模块的配置作了一些

这篇文章给大家介绍如何实现Centos与Apache连接的PHP多版本共存,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

CentOS下与Apache连接的php多版本共存方案实现,针对mod_fcgi模块的配置作了一些说明。

在apache下整合fastCGI模式运行的php-fpm,似乎网上很少相关材料,就连英文版材料也少。只要是php-fpm,基本上都是与Nginx搭配。查了一大批相关资料,写本文总结一下。

apache下有多个fastCGI的支持方案:至少有mod_fcgi、mod_fastcgi(git)、mod_proxy_fcgi等。这两个模块都有点老,尤其mod_fastcgi自从2007年以来就没有更新,略掉不谈,事实上没用过用。mod_proxy_fcgi模块是Httpd 2.4+的版本正式引入,通过简洁的一行 ProxyPaSSMatch 指令即可。

mod_fcgi

mod_fcgi模块本身是做fastCGI进程管理的,使用它就不需要使用php-fpm管理进程了。核心配置参数

LoadModule fcgid_module modules/mod_fcgid.so<VirtualHost *:80> DocumentRoot "/var/www/html/site_1" ServerName "www.yourhost.com" DirectoryIndex index.html index.php #php.ini的存放目录,linux下通常不需要 #FcgidInitialEnv PHPRC "D:/php" # 设置PHP_FCGI_MAX_REQUESTS大于或等于FcgidMaxRequestsPerProcess,防止php-cgi进程在处理完所有请求前退出 FcgidInitialEnv PHP_FCGI_MAX_REQUESTS 1000 #php-cgi每个进程的最大请求数 FcgidMaxRequestsPerProcess 1000 #php-cgi最大的进程数 FcgidMaxProcesses 3 #最大执行时间 FcgidioTimeout 600 FcgidIdleTimeout 600 #php-cgi的路径 FcgidWrapper /usr/local/php7/bin/php-cgi .php AddHandler fcgid-script .php FcgidInitialEnv PHP_FCGI_MAX_REQUESTS 1000 <Directory "/var/www/html/site_1"> Options +ExecCGI </Directory></VirtualHost>

几个Fcgid*指令,是优化之用,这里仅示例,要按实际情况调整数值。具体参看mod_fcgi官方文档

使用mod_fcgid的几个特点

php-fgi进程是由apache模块启动并管理,不需要配置php-fpm

在php-cig进程以apache用户身份运行,php程序写的文件,其权限为apache用户(而不像php-fpm下写文件为php-fpm用户所有,默认是nobody),这样在目录权限管理方面一致性高些。

mod_fastcgi

虽然CentOS 6.x下是apache 2.2,但所幸已经有人成功移植: https://GitHub.com/ceph/mod-proxy-fcgi 我们可以直接使用;更幸运的是它已经进入epel源,直接yum安装即可;不想匹配epel源的,直接下载rpm包安装也可以(示例 http://mirrors.ustc.edu.cn/epel/6/x86_64/)

当然可以重新编译安装apache 2.4, 这样直接有mod_proxy_fcgi可以使用,但这里还是保持原版本不变,省掉编译的工作量。

参考mod_proxy_fcgi官方文档,整合php-fpm的配置指令

ProxyPassMatch "^/myapp/.*\.php(/.*)?$" "fcgi://localhost:9000/var/www/http://www.bbqmw.net/qm_zyqm/"

语法很简单,跟配置反向代理类似,可以按实际需要做修改。事实上与mod_proxy模块语法一致的,不同处是将http协议改成fcig协议。

以上是apache整合php-fpm模式运行的fastCGI,接下来要对yum安装的php做下配置修改。

yum安装的php配置文件 /etc/httpd/conf.d/php.conf ,其中有如下一行

AddHandler php5-script .php

我们要对不同的站点启用不同的php,上面一行是对全局的.php文件分配给php模块处理,我们把这一行注释掉。而是在每个站点启用不同的php运行模式。

关于如何实现CentOS与Apache连接的PHP多版本共存就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

--结束END--

本文标题: 如何实现CentOS与Apache连接的PHP多版本共存

本文链接: https://lsjlt.com/news/244502.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 如何实现CentOS与Apache连接的PHP多版本共存
    这篇文章给大家介绍如何实现CentOS与Apache连接的PHP多版本共存,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。CentOS下与Apache连接的PHP多版本共存方案实现,针对mod_fcgi模块的配置作了一些...
    99+
    2023-06-05
  • 如何在lnmp中实现PHP多版本共存
    背景:one框架需要swool扩展,同时php版本需要7.3,目前服务器安装的是lnmp1.6其中php5.6. 所以觉得安装一个php7.3作为切换版本 ,以下是安装步骤 1.查找lnmp的inst...
    99+
    2023-09-09
    php nginx 服务器
  • 如何使用OneinStack实现多版本PHP共存
    这篇文章跟大家分析一下“如何使用OneinStack实现多版本PHP共存”。内容详细易懂,对“如何使用OneinStack实现多版本PHP共存”感兴趣的朋友可以跟着小编的思路慢慢深入来阅读一下,希望阅读后能够对大家有所帮助。下面跟着小编一起...
    99+
    2023-06-28
  • 如何实现Java JDK的多版本共存
    学习Java最一开始就是需要做环境配置啦,安装JDK是必不可少的。大家都知道JDK是Java开发者工具包,那么一般来说要选择什么样的版本来安装呢?可以安装多个JDK吗?是否可以我随时想切换哪个JDK就使用哪个呢? 下面我会主要说明如何实现J...
    99+
    2023-09-22
    java jvm 开发语言
  • 如何解决多IE版本共存的问题
    这篇文章主要介绍“如何解决多IE版本共存的问题”,在日常操作中,相信很多人在如何解决多IE版本共存的问题问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何解决多IE版本共存的问题”的疑惑有所帮助!接下来,请跟...
    99+
    2023-06-08
  • 如何实现mysql与php的连接
    这篇文章将为大家详细讲解有关如何实现mysql与php的连接,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。  定义:  PDO是PHP Data Object的简称,代表PHP数据对象...
    99+
    2023-06-06
  • php如何实现Redis连接与认证
    这篇文章给大家分享的是有关php如何实现Redis连接与认证的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Redis连接与认证//连接参数:ip、端口、连接超时时间,连接成功返回...
    99+
    2024-04-02
  • 如何实现latex与gitee的连接
    本篇内容介绍了“如何实现latex与gitee的连接”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、配置Gitee账户第一步,我们需要在G...
    99+
    2023-07-05
  • pycharm2017如何实现python3.6与mysql的连接
    这篇文章主要为大家展示了“pycharm2017如何实现python3.6与mysql的连接”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“pycharm2017...
    99+
    2024-04-02
  • 如何实现释放CentOS系统内存的Shell脚本
    本篇内容介绍了“如何实现释放CentOS系统内存的Shell脚本”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!脚本内容:代码如下: ...
    99+
    2023-06-09
  • 如何使VirtualBox下CentOS中的文件与宿主机实现共享
    本篇内容主要讲解“如何使VirtualBox下CentOS中的文件与宿主机实现共享”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何使VirtualBox下CentOS中的文件与宿主机实现共享”...
    99+
    2023-06-10
  • 如何实现MySQL安装与idea的连接
    这篇文章将为大家详细讲解有关如何实现MySQL安装与idea的连接,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。MySQL安装与idea的连接--编辑my.ini配置文件内容(Mysql 8.0...
    99+
    2023-06-22
  • PHP连接数据库如何实现最基本的增删改查
    PHP连接数据库如何实现最基本的增删改查,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。PHP连接数据库,实现最基本的增删改查(面向对象)PHP...
    99+
    2024-04-02
  • python如何实现信号与槽的断开与连接
    这篇文章主要介绍了python如何实现信号与槽的断开与连接,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。信号与槽的断开与连接有时候基于某些原...
    99+
    2024-04-02
  • PHP Git 实战:代码管理与协作中的版本控制如何实现?
    git,一种分布式版本控制系统,可用于管理 php 代码,提高组织性和协作性。步骤包括:1. 安装 git;2. 初始化存储库;3. 添加和提交代码;4. 克隆存储库;5. 拉取和推送更...
    99+
    2024-05-13
    php git
  • 如何实现本地连接禁用/启用的批处理脚本
    这篇文章主要为大家展示了“如何实现本地连接禁用/启用的批处理脚本”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何实现本地连接禁用/启用的批处理脚本”这篇文章吧。代码如下:Const ...
    99+
    2023-06-08
  • 如何实现Flex与.NET基于Socket的网络连接
    这篇文章给大家分享的是有关如何实现Flex与.NET基于Socket的网络连接的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Flex与.NET基于Socket的网络连接Flash/Flex也支持基于Socket的...
    99+
    2023-06-17
  • 如何实现自动断开网络共享访问连接的批处理
    这篇文章给大家分享的是有关如何实现自动断开网络共享访问连接的批处理的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。适用平台:WINDOWS 2K/XP HOME/PRO 适用环境:目录共享或打印机共享,经常因达到1...
    99+
    2023-06-08
  • 如何使用PHP实现一个简单的博客2.0版本
    概述:在互联网时代,博客已经成为一种非常流行的表达方式和记录生活的工具。在开发一个博客应用程序时,PHP是一种常用的服务器端脚本语言,它可以用来处理用户请求、生成动态页面以及与数据库交互等。本文将介绍如何使用PHP来实现一个简单的博客2.0...
    99+
    2023-10-21
    博客 PHP 实现
  • 如何实现RedHat系统上基本的网络连接和设置
    这篇文章主要介绍“如何实现RedHat系统上基本的网络连接和设置”,在日常操作中,相信很多人在如何实现RedHat系统上基本的网络连接和设置问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何实现RedHat系...
    99+
    2023-06-10
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作