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 ...
随机推荐
- Framebuffer重要结构体说明
l fb_var_screeninfo:记录了帧缓冲设备和指定显示模式的可修改记录.包括屏幕的分辨率,像素信息和一些时序变量 struct fb_var_screeninfo { __u32 xre ...
- Hibernate:有了 save,为什么还需要 persist?
背景 万物皆自然,每个 API 的设计,无论是否正确,都有其意图.因此,在学习某些框架的时候,我们需要经常思考:这个 API 的设计意图是啥? 本文来探讨一下 Session 中 persist 的设 ...
- Appium+python自动化22-Appium Desktop
Appium Desktop 原滋原味的官方文档 Appium Desktop是一款用于Mac.Windows和Linux的开源应用,它提供了Appium自动化服务器在一个漂亮灵活的UI中的强大功能. ...
- Cohen-SutherLand算法(编码算法)
转自:http://my.oschina.net/liqiong/blog/4921 Cohen-SutherLand算法(编码算法) 基本思想:对于每条线段P1P2,分为三种情况处理: (1)若 ...
- [翻译] SFRoundProgressCounterView 带有进度显示的倒计时视图
SFRoundProgressCounterView 带有进度显示的倒计时视图 https://github.com/simpliflow/SFRoundProgressCounterView A c ...
- Java集合类ArrayList循环中删除特定元素
在项目开发中,我们可能往往需要动态的删除ArrayList中的一些元素. 一种错误的方式: <pre name="code" class="java"&g ...
- 《Android传感器高级编程》
<Android传感器高级编程> 基本信息 原书名:Professional Android Sensor Programming 原出版社: Wrox 作者: (美)米内特(Greg M ...
- MySQL year函数
mysql的日期函数,示例如下:
- [Linux] ubuntu下查看CHM的软件
本文旨在介绍linux下的常见chm阅读软件及其安装,并针对一些问题给出解决方法. 一.CHMSEE 这个比较常见了,呵呵. 安装: sudo apt-get install chmsee 之后在应用 ...
- 10.线程通信CountDownLatch
CountDownLatch 1.一个同步的辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个.多个线程去一直等待,用给定的计数.初始化“CountDownLatch”. 由于调用 count ...