前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Apache多虚拟主机多版本PHP(5.2+5.3+5.4)共存运行配置全过程

Apache多虚拟主机多版本PHP(5.2+5.3+5.4)共存运行配置全过程

作者头像
96php.cn
发布2018-04-28 15:00:27
2.3K0
发布2018-04-28 15:00:27
举报
文章被收录于专栏:www.96php.cn

    因为某种需求,可能是因为早期的项目需要低版本的php,和目前开发所用的版本不太一致,我们需要给不同的虚拟主机配置不同版本的PHP。避免去额外配置多个Apache,等iis和apache共存的麻烦。

下文引量说明:

D:/Apache/          Apache安装目录

D:/php53/            PHP5.3版本目录,以上版本类同

D:/WEB/*             虚拟主机主目录

  • #准备工作

测试系统(windows7x64)

所需文件 apache2.2(x86)、PHP(nts)、fcgid(mod_fcgid-2.3.6-win32-x86)

1.常规手动部署apache方法(不会apache配置的请先移步看下Apache基本手工配置方法),解压fcgid,取其mod_fcgid.so至modules目录

PHP各版本解压到不同目录并配置,任意位置,方便即可。

2.打开httpd.conf 注释掉以下类似配置

代码语言:javascript
复制
#LoadModule php5_module "D:/php53/php5apache2_2.dll"
#PHPIniDir "D:/php53/"

 3.增加配置(尾部或中部即可)

代码语言:javascript
复制
#加载fcgid扩展模块(额外说明,fcgid根据实际apache版本对应,apache2版本测试2.3.6正常)
LoadModule fcgid_module modules/mod_fcgid.so
#添加映射
AddHandler fcgid-script .fcgi .php
# 设置PHP_FCGI_MAX_REQUESTS大于或等于FcgidMaxRequestsPerProcess,防止php-cgi进程在处理完所有请求前退出
FcgidInitialEnv PHP_FCGI_MAX_REQUESTS 1000
#php-cgi每个进程的最大请求数
FcgidMaxRequestsPerProcess 1000
#php-cgi最大的进程数
FcgidMaxProcesses 3
#最大执行时间
FcgidIOTimeout 120
FcgidIdleTimeout 120
AddType application/x-httpd-php .php
#------这里是默认虚拟主机配置
#php.ini的存放目录
FcgidInitialEnv PHPRC "D:/php5.4.4/"
#php-cgi的路径
FcgidWrapper "D:/php5.4.4/php-cgi.exe" .php

4.修改添加执行权限(如若不然,可能会提示HTTP错误,禁止访问403)

ExecCGI 为附加值

代码语言:javascript
复制
<Directory />
    Options FollowSymLinks ExecCGI
    AllowOverride None
    Order deny,allow
    Deny from all
</Directory>

 5. 虚拟主机文件配置 (每个虚拟主机独立的配置段中只需要更改其配置版本路径即可,以下配置为PHP5.3.1虚拟主机配置)

代码语言:javascript
复制
<VirtualHost *:80>
      ServerName "apihost"
      ServerAlias www.apihost.com api.apihost.com
      FcgidInitialEnv PHPRC "D:/php5.3.1/"
      FcgidWrapper "D:/php5.3.1/php-cgi.exe" .php
      DocumentRoot "D:/WEB/apihost/wwwroot/"
      ErrorLog "D:/WEB/apihost/log/error.log"
      CustomLog "D:/WEB/apihost/log/access.log" common
</VirtualHost>

重启Apache完工!

以上内容为小编测试使用记录,网上类似的文章并不多,有其他默认CGI配置方式+htaccess配置过程,经小测试没有成功。

如果你有更好的方法可以在底部留言哦!

#以下为小编整理的引文,供大家参考使用。

1.mod_fcgid指令的中文翻译

http://blog.csdn.net/xuejiazhi/article/details/9022961

2.mod_fcgid下载地址(vc10以上)

http://www.apachelounge.com/download/VC10/

3.apache+php多版本共存解决方案

http://www.zhixing123.cn/php/19008.html

4.apache多版本php配置过程

http://www.cnblogs.com/xiaoyaoxia/archive/2011/09/29/2195434.html

5.WampServer中Apache使用FastCGI模式跑PHP5.3nts版

http://my.oschina.net/Twitter/blog/210044

6.PHP中VC6、VC9、TS、NTS版本的区别与用法详解

http://www.jb51.net/article/42422.htm

补充:ISAPI来执行PHP,每一个请求不会立即结束,选择线程安全版

      FastCGI执行PHP,单一的线程运行程序,选择非线程安全版

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016年12月15日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
轻量应用服务器
轻量应用服务器(TencentCloud Lighthouse)是新一代开箱即用、面向轻量应用场景的云服务器产品,助力中小企业和开发者便捷高效的在云端构建网站、Web应用、小程序/小游戏、游戏服、电商应用、云盘/图床和开发测试环境,相比普通云服务器更加简单易用且更贴近应用,以套餐形式整体售卖云资源并提供高带宽流量包,将热门软件打包实现一键构建应用,提供极简上云体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档