日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > asp.net >内容正文

asp.net

win2003 IIS6配置PHP 5.3.3(fastCGI方式+eAccelerator)+ASP.NET 4.0(MVC3)

發(fā)布時(shí)間:2023/12/1 asp.net 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 win2003 IIS6配置PHP 5.3.3(fastCGI方式+eAccelerator)+ASP.NET 4.0(MVC3) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
win2003 IIS6配置PHP 5.3.3(fastCGI方式+eAccelerator)+ASP.NET 4.0(MVC3)

直入正題。

這個(gè)環(huán)境的部署很有講究,折騰了一天,大概說(shuō)一下思路:

自從哪個(gè)PHP的版本開(kāi)始(5.2也不知道多少),就分了thread-safe版和non-thread-safe版,簡(jiǎn)稱(chēng)就是ts和nts版本,還區(qū)分了VC6和VC編譯的版本,我作一下解釋。(可以參見(jiàn)官方:http://windows.php.net/)

VC6是用在Apache服務(wù)器上的,而VC9則適用于IIS,這個(gè)比較明確,官方也給了明確說(shuō)明。

ts和nts版本就比較講究了。這個(gè)大家可以參考(http://blog.163.com/daizhen_dz@yeah/blog/static/129411342201042992157604/),我也是從這里學(xué)習(xí)到的。

IIS添加fastCGI模塊,使其能夠得以運(yùn)行,再配置fastCGI的配置文件,添加對(duì)php-cgi.exe的支持。
結(jié)論就是,以fastCGI方式運(yùn)行PHP會(huì)得到性能和資源的平衡。

MVC3的站,大都是通過(guò)沒(méi)有后綴的方式請(qǐng)求的(controller/action的形式),我的解決方式我認(rèn)為很合理:在PHP站中什么都不改,而針對(duì).NET 4.0的站,添加對(duì)*(所有請(qǐng)求)請(qǐng)求的攔截處理,使用aspnet-isapi來(lái)處理請(qǐng)求,這樣既不影響PHP性能(不會(huì)先經(jīng)過(guò)aspnet的isapi處理),也不影響.NET站的運(yùn)行。

環(huán)境需要以下資源:

  • fastCGI for IIS(微軟官方有下)
  • .NET 4.0 Runtime(官方有下)
  • PHP 5.3.3(為什么要這個(gè)版本,后續(xù)會(huì)解釋,下載需要從php.net中windows的PHP里,archives中找,http://windows.php.net/downloads/releases/archives/)
  • eAccelerator binary for PHP 5.3.3(一開(kāi)始果斷裝了最新版的5.4.12,但是eAccelerator自己編譯有點(diǎn)麻煩,官方的安裝教程是源碼安裝的,但是服務(wù)器上哪來(lái)的VS,所以就通過(guò)二進(jìn)制安裝,直接找編譯好的
  • 對(duì)于以上環(huán)境做一些解釋

  • 只要是.NET 4.0,就不需要額外安裝MVC3了,里面自帶了,如果是4.0以下版本,還需要裝MVC
  • PHP和eAccelerator的版本是很有講究的。官方的安裝教程(https://github.com/eaccelerator/eaccelerator/wiki)教你的是從源碼安裝,linux下很合理,windows服務(wù)器上哪來(lái)的VS給你編譯,所以就開(kāi)始找binary版本(編譯好的DLL)了,渠道可以參考官方的(https://github.com/eaccelerator/eaccelerator/wiki/InstallFromBinary)。
    我是從http://www.sitebuddy.com/PHP/Accelerators/eAccelerator_windows_binaries_builds 這里下載的,這個(gè)哥們編譯了好多版本的eAccelerator,但是最新的版本也只能支持到PHP 5.3.3。
    我嘗試了用5.4.12加載eAccelerator for PHP 5.3.3,結(jié)果證明不行,PHP錯(cuò)誤日志輸出版本不匹配,也嘗試了低版本的PHP,依然不行。因此我還是將PHP降級(jí)到5.3.3,運(yùn)行后成功。
  • 具體安裝步驟比較復(fù)雜,我寫(xiě)個(gè)簡(jiǎn)明版的。。主要就是些配置方面的東西,關(guān)鍵要把原理搞明白。

  • PHP下好,放在c:\php里,PHP配置不詳解了,再配個(gè)eAccelerator。
  • 安裝IIS,記得把ASP.NET勾上
  • 打開(kāi)IIS,添加fastCGI擴(kuò)展(IIS7默認(rèn)就帶的,win2003的IIS6得自己配上),不會(huì)的話網(wǎng)上搜
  • 讓fastCGI支持php cgi擴(kuò)展。
    打開(kāi)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網(wǎng)站,啥都不用配就行了
  • 添加.NET網(wǎng)站。選好ASP.NET版本,假設(shè)4.0。為了能處理沒(méi)有后綴的請(qǐng)求,在”主目錄”里”配置”,”映射”,下面那塊”通配符應(yīng)用程序映射”,添加一條 “C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll“,然后取消勾選”檢查文件是否存在”。
  • 基本就是這個(gè)過(guò)程了,這樣就達(dá)到了既能跑.NET站,也能跑PHP站的目的了。

    posted on 2013-04-22 11:26?原版橘子皮 閱讀(...) 評(píng)論(...) 編輯 收藏

    轉(zhuǎn)載于:https://www.cnblogs.com/sy890622/archive/2013/04/22/3403057.html

    總結(jié)

    以上是生活随笔為你收集整理的win2003 IIS6配置PHP 5.3.3(fastCGI方式+eAccelerator)+ASP.NET 4.0(MVC3)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。