win2003 IIS6配置PHP 5.3.3(fastCGI方式+eAccelerator)+ASP.NET 4.0(MVC3)
直入正题。
这个环境的部署很有讲究,折腾了一天,大概说一下思路:
自从哪个PHP的版本开始(5.2也不知道多少),就分了thread-safe版和non-thread-safe版,简称就是ts和nts版本,还区分了VC6和VC编译的版本,我作一下解释。(可以参见官方:http://windows.php.net/)
VC6是用在Apache服务器上的,而VC9则适用于IIS,这个比较明确,官方也给了明确说明。
ts和nts版本就比较讲究了。这个大家可以参考(http://blog.163.com/daizhen_dz@yeah/blog/static/129411342201042992157604/),我也是从这里学习到的。
IIS添加fastCGI模块,使其能够得以运行,再配置fastCGI的配置文件,添加对php-cgi.exe的支持。
结论就是,以fastCGI方式运行PHP会得到性能和资源的平衡。
MVC3的站,大都是通过没有后缀的方式请求的(controller/action的形式),我的解决方式我认为很合理:在PHP站中什么都不改,而针对.NET 4.0的站,添加对*(所有请求)请求的拦截处理,使用aspnet-isapi来处理请求,这样既不影响PHP性能(不会先经过aspnet的isapi处理),也不影响.NET站的运行。
环境需要以下资源:
- fastCGI for IIS(微软官方有下)
- .NET 4.0 Runtime(官方有下)
- PHP 5.3.3(为什么要这个版本,后续会解释,下载需要从php.net中windows的PHP里,archives中找,http://windows.php.net/downloads/releases/archives/)
- eAccelerator binary for PHP 5.3.3(一开始果断装了最新版的5.4.12,但是eAccelerator自己编译有点麻烦,官方的安装教程是源码安装的,但是服务器上哪来的VS,所以就通过二进制安装,直接找编译好的
对于以上环境做一些解释
- 只要是.NET 4.0,就不需要额外安装MVC3了,里面自带了,如果是4.0以下版本,还需要装MVC
- PHP和eAccelerator的版本是很有讲究的。官方的安装教程(https://github.com/eaccelerator/eaccelerator/wiki)教你的是从源码安装,linux下很合理,windows服务器上哪来的VS给你编译,所以就开始找binary版本(编译好的DLL)了,渠道可以参考官方的(https://github.com/eaccelerator/eaccelerator/wiki/InstallFromBinary)。
我是从http://www.sitebuddy.com/PHP/Accelerators/eAccelerator_windows_binaries_builds 这里下载的,这个哥们编译了好多版本的eAccelerator,但是最新的版本也只能支持到PHP 5.3.3。
我尝试了用5.4.12加载eAccelerator for PHP 5.3.3,结果证明不行,PHP错误日志输出版本不匹配,也尝试了低版本的PHP,依然不行。因此我还是将PHP降级到5.3.3,运行后成功。
具体安装步骤比较复杂,我写个简明版的。。主要就是些配置方面的东西,关键要把原理搞明白。
- PHP下好,放在c:\php里,PHP配置不详解了,再配个eAccelerator。
- 安装IIS,记得把ASP.NET勾上
- 打开IIS,添加fastCGI扩展(IIS7默认就带的,win2003的IIS6得自己配上),不会的话网上搜
- 让fastCGI支持php cgi扩展。
打开C:\WINDOWS\system32\inetsrv,这是IIS fastCGI的目录,修改fcgiext.ini文件,末尾添上[Types] php=PHP[PHP] ExePath=C:\PHP\php-cgi.exe InstanceMaxRequests=10000 ActivityTimeout=600 RequestTimeout=600 EnvironmentVars=PHP_FCGI_MAX_REQUESTS:10000,PHPRC:C:\PHP\
- 添加PHP网站,啥都不用配就行了
- 添加.NET网站。选好ASP.NET版本,假设4.0。为了能处理没有后缀的请求,在”主目录”里”配置”,”映射”,下面那块”通配符应用程序映射”,添加一条 “C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll“,然后取消勾选”检查文件是否存在”。
基本就是这个过程了,这样就达到了既能跑.NET站,也能跑PHP站的目的了。
转载于:https://www.cnblogs.com/sy890622/archive/2013/04/22/3403057.html
win2003 IIS6配置PHP 5.3.3(fastCGI方式+eAccelerator)+ASP.NET 4.0(MVC3)相关推荐
- 在 IIS6 配置使用php的fastcgi模式
今天搭建网站的时候,需要配置网站的php运行环境为fastcgi模式,以往的网站都是采用isapi模式搭建的,既然是第一次遇到这样的问题,肯定是能学到东西了,我就自己搭建了一下,没想到成功了,呵呵,现 ...
- win2003 iis运行php环境,win2003 IIS6.0配置php环境如何加载php5isapi.dll
因为我自己是windows 2003+iis我想在上面可以运行php那我休安装了php环境,然后再加载php5isapi.dll就可以,说起来简单但是不成功,下面看我的解决办法. 首先,从PHP官方网 ...
- win2003 IIS6,能访问html页 但是不能访问aspx页解决办法汇总
win2003 sp2 系统.装上IIS6后,html正常访问,但是aspx页就是访问不了,日志文件也不做任何问题的记录. 全是网上资料,放一起,方便查找. 描述下目前遇到的问题: win2003 s ...
- iis只能访问html页面,win2003 IIS6,能访问html页 但是不能访问aspx页解决办法汇总
win2003 sp2 系统.装上IIS6后,html正常访问,但是aspx页就是访问不了,日志文件也不做任何问题的记录. 全是网上资料,放一起,方便查找. 描述下目前遇到的问题: win2003 s ...
- IIS6配置Asp.net MVC运行环境
Windows server 2003 + IIS6 搭建Asp.net MVC运行环境 1.安装.Net Framework4.0. 下载地址: http://www.microsoft.com/ ...
- iis7 php5 isapi配置,Windows7 IIS7下以FastCgi和ISAPI方法安装配置PHP5教程
说到PHP环境配置与安装,通常以Apache搭载PHP配置为主,随着PHP版本不断更新,对Windows IIS平台的支持也越来越好,在Windows IIS平台上配置安装PHP环境也越来越方便. 在 ...
- isapi mysql_Windows 2008R2以ISAPI和Fastcgi方式安装配置IIS、PHP、Mysql环境
Windows下PHP有两个版本,非线程安全及线程安全版本,运行方式可选ISAPI.Fastcgi.CGI.1.Non Thread Safe版本php适用于以CGI以和fastCGI运行的web服务 ...
- win2003配置apache支持php_asp,Win2003下配置asp+cgi+php+mysql
WIN2003下配置ASP CGI PHP环境(1) 我们要使IIS实现ASP,CGI,PERL和PHP 所需软件(都要是For Windows的): ActivePerl.PHP,ASP(WINDO ...
- Apache 配置------FastCGI方式使用PHP(包含:linux下编译安装fmod_fcgid,配置apache以支持FastCGI)
本文用于记录Apache配置 FastCGI方式运行PHP(使用非线程安全版本) 下文包含如下内容: 1 linux下编译官网提供的最新版fmod_fcgid源码为os,方便linux或者window ...
最新文章
- 计算机网络技术包括哪几种,计算机网络技术包含的两个主要技术是计算机技术和( )。...
- STM32的SPI问题。
- windows7下消除快捷键箭头的方法
- 算力云服务器是干啥的,云服务器将成趋势计算力和安全性是考验
- Oracle10g数据库的完全卸载:
- linux ssh环境,在Linux下ssh 环境的登录 和 文件拷贝
- android开发蓝牙快速读写有问题,【报Bug】安卓低功耗蓝牙写入时10007,特征无写入权限,IOS正常读写...
- Eclipse Scout架构商业应用开发的工具与环境
- Socket层实现系列 — I/O事件及其处理函数
- java职业规划怎么写_java个人职业生涯发展规划书范文
- artDialog--经典的网页对话框组件
- 靠谱的社交app有哪些
- 《杀死一只知更鸟》哪个译本好?
- HTML/CSS class6 table布局
- Mysql基础篇(3)—— MySQL数据库类型
- H5 LayaAir实现复制微信号到剪切板功能
- 小飞鱼通达二开 通过开发工作流接口集成ERP系统(图文)
- 香港计算机翻译博士,香港城市大学博士offer一枚-指南者留学
- 网站调整为黑白的方法
- 学什么编程语言以后不会过时?
热门文章
- Java中的传值与传引用
- python字符串长度_如何使用python获取字符串长度?哪些方法?
- 计算机基础知识:什么是位、字节、字、KB、MB
- Python应用实战-用Python爬取数据分析岗位信息并可视化分析
- jq的插件 vue中引用_详解如何在 vue 项目里正确地引用 jquery 和 jquery-ui的插件
- 在地图上 添加柱状_如何做出一份惊艳的PPT地图页?这2个字,你一定要知道!...
- 七夕(情人节)表白女朋友,程序员应该如何装一波13
- linux 秒数转时间格式,通过delphi将秒数转换成日期格式
- php 文件内容对比,php 比较两个文件是否相同
- 前端工程师和设计师必读文章推荐【系列三十六】