Apache多虚拟主机多版本PHP(5.2+5.3+5.4)共存运行配置全过程
因为某种需求,可能是因为早期的项目需要低版本的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目录
httpd.conf 更改(去掉井号)
LoadModule fcgid_module modules/mod_fcgid.so
PHP各版本解压到不同目录并配置,任意位置,方便即可。
2.打开httpd.conf 注释掉以下类似配置
#LoadModule php5_module "D:/php53/php5apache2_2.dll"
#PHPIniDir "D:/php53/"
3.增加配置(尾部或中部即可)
#加载fcgid扩展模块(额外说明,fcgid根据实际apache版本对应,apache2版本测试2..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
#php-cgi每个进程的最大请求数
FcgidMaxRequestsPerProcess
#php-cgi最大的进程数
FcgidMaxProcesses
#最大执行时间
FcgidIOTimeout
FcgidIdleTimeout
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 为附加值
<Directory />
Options FollowSymLinks ExecCGI
AllowOverride None
Order deny,allow
Deny from all
</Directory>
5. 虚拟主机文件配置 (每个虚拟主机独立的配置段中只需要更改其配置版本路径即可,以下配置为PHP5.3.1虚拟主机配置)
<VirtualHost *:>
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配置过程,经小测试没有成功。
如果你有更好的方法可以在底部留言哦!
附件下载:mod_fcgid-2.3.6-win32-x86
#以下为小编整理的引文,供大家参考使用。
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,单一的线程运行程序,选择非线程安全版
转:https://blog.csdn.net/ybhjx/article/details/52205705
Apache多虚拟主机多版本PHP(5.2+5.3+5.4)共存运行配置全过程的更多相关文章
- Apache多虚拟主机多版本PHP(5.3+5.6+N)共存运行配置全过程
摘要: 为需要实现在同一台Linux服务器上面,同时运行多个不同版本的PHP程序,本文我们将使用FastCGI方式加载,并把过程详细记录下来方便大家参考. 常规的PHP配置方式有很多种,例如CGI.f ...
- apache开启虚拟主机localhost无法访问
今天在集成环境下配虚拟主机,没想到虚拟主机开启后,localhost竟然无法访问了,解决办法是这样的: 实例一,Apache 配置localhost虚拟主机步骤 1,用记事本打开apache目录下ht ...
- Apache和PHP结合、Apache默认虚拟主机
5月28日任务 课程内容: 11.14/11.15 Apache和PHP结合11.16/11.17 Apache默认虚拟主机 11.14/11.15 Apache和PHP结合 到目前为止虽然安装好了A ...
- Apache 创建虚拟主机目录和设置默认访问页面
虚拟主机 (Virtual Host) 是在同一台机器搭建属于不同域名或者基于不同 IP 的多个网站服务的技术. 可以为运行在同一物理机器上的各个网站指配不同的 IP 和端口, 也可让多个网站拥有不同 ...
- php配置虚拟主机的配置步骤(hosts、httpd.conf、vhosts.conf)1.配置本地的dns文件2.配置apache的主配置文件3.配置Apache的虚拟主机
1.域名解析(DNS) 找到C:\Windows\System32\drivers\etc目录下的hosts文件,在里面进行添加对应的内容
- windows下Apache的虚拟主机配置
1.Apache虚拟主机: 在Apache上有关于虚拟主机的具体说明,具体可以参考Apache手册,这里简单的说一下虚拟主机主要分为两种: 1.基于主机名的虚拟主机(一个IP地址,多个网站) 2.基于 ...
- Apache+php+mysql的安装与配置 - 之三(Apache的虚拟主机配置)
Apache+php+mysql的安装与配置 - 之三(Apache的虚拟主机配置) Apache核心(Core)配置 VirtualHost 语法 <VirtualHost addr[:por ...
- Apache的虚拟主机功能
Apache的虚拟主机功能 (Virtual Host) 是可以让一台服务器基于IP.主机名或端口号实现提供多个网站服务的技术. 第一种情况:基于IP地址 这种情况很常见:一台服务器拥有多个IP地址, ...
- Centos7下配置Apache的虚拟主机
一.虚拟主机 虚拟主机是Apache提供的一个功能,通过虚拟主机拉雅在一台服务器上部署多个网站.虽然服务器的IP地址是相同的,但用户当用户使用不同的域名访问时,访问到的是不同的网站. 下面讲解Apac ...
随机推荐
- JavaScript面向对象编程指南(第2版)》读书笔记
一.对象 1.1 获取属性值的方式 water = { down: false } console.log(water.down) // false console.log(water['down'] ...
- 微信开发之如何使用开发工具--weixin-java-tools
一.前沿 微信公众平台由于没有提供针对语言的开发包,只公布了一个基于Http协议的接口和加解密的算法sdk,这样给微信公众号的开发者带来很多工作量,除了实现业务逻辑外,还需要自己处理底层的接口协议细节 ...
- Starling 2D框架简介(一)
本系列是对Introducing Starling pdf的翻译,下文是对adobe开发人员中心的一片日志的转载,地址为http://www.adobe.com/cn/devnet/flashplay ...
- OpenCV学习(9) 分水岭算法(3)
本教程我学习一下opencv中分水岭算法的具体实现方式. 原始图像和Mark图像,它们的大小都是32*32,分水岭算法的结果是得到两个连通域的轮廓图. 原始图像:(原始图像必须是3通道图像) Mark ...
- Android -- Messenger与Service
如果你需要你的service和其他进程通信,那么你可以使用一个Messenger来提供这个接口. 这种方法允许你在不使用 AIDL的情况下,进行跨进程通信IPC. 实现步骤 下面是一个如何使用 Mes ...
- linux shell的执行方式
./ ping.sh 这个意思 ,'./'的意思是在当前目录执行, ping.sh----------------------------------------------------------- ...
- C-IDE使用指南
HI 您好: 亲爱的学员,本文章是基于C-IDE的入口使用指南,您能够查看demo项目来了解C-IDE详细操作哦~ 如有疑问您可提交反馈来咨询,或扫描下方二维码增加官方微信群.我们会认真对待且具体回 ...
- [Oracle] SQL*Loader 详细使用教程(5)- 典型例子
本文介绍SQL*Loader在实际使用过程中经常用到的典型例子. 1. 表中的列比数据文件的列要少怎么办? 假设一个csv的文件如下: a1,a2,a3,a4 b1,b2,b3,b4 c1,c2,c3 ...
- Hadoop之MapReduce命令
概述 全部的Hadoop命令都通过bin/mapred脚本调用. 在没有不论什么參数的情况下.执行mapred脚本将打印该命令描写叙述. 使用:mapred [--config confdir] CO ...
- js 多级联动(省、市、区)
js 多级联动(省.市.区) CreateTime--2018年4月9日17:10:38 Author:Marydon 方式一: 数据从数据库获取,ajax实现局部刷新 方式二: 数据从json文 ...