在Apache環(huán)境下成功的運(yùn)行ASP.NET的注意事項(xiàng)
緣起是由于IIS的口碑實(shí)在太濫,以至于不少的關(guān)鍵應(yīng)用場(chǎng)景明文禁止安裝和使用IIS。而從ASP.NET的執(zhí)行原理來(lái)看,它是通過(guò)一個(gè)Web Server處理tcp請(qǐng)求,然后把對(duì)ASPX執(zhí)行和呈現(xiàn)交于使用.NET實(shí)現(xiàn)一個(gè)托管環(huán)境來(lái)進(jìn)行的。所以使用Apache是目前最經(jīng)濟(jì)的IIS替代品,而同時(shí)在Apache的sub-project正好有一個(gè)支持ASP.NET的模塊,并且已經(jīng)開(kāi)發(fā)到了2.0版本。我所配合使用的版本是Apache HTTP Server 2.0.55和mod_aspdotnet 2.0.0。安裝非常的簡(jiǎn)單,兩個(gè)程序都是msi安裝包,一路next就搞定了。完了再在安裝目錄/htdocs下建一個(gè)目錄,如:active。
不過(guò)其中有兩個(gè)小問(wèn)題需要注意:
一是:在安裝Apache HTTP Server的時(shí)候,如果我們機(jī)器上的80端口已被占用,需要選使用8080端口來(lái)安裝那個(gè)選項(xiàng),當(dāng)然這個(gè)端口是可以在httpd.conf文件里修改的。只是使用這種安裝方式安裝好以后需要手動(dòng)的啟動(dòng)apache2服務(wù),使用cmd命令并進(jìn)入apache安裝目錄,如:D:\Program Files\Apache Group\Apache2\bin,運(yùn)行:apache -k install。
二是:在配置aspdotnet_module的時(shí)候,我們需要在httpd.conf文件中追加以下清單:

























目前,這個(gè)mod_aspdotnet模塊最大的問(wèn)題是在認(rèn)證支持上的不足,比如windows和form都還不能支持,不過(guò)開(kāi)源的東西更新還是很快的。由于使用Microsoft .NET Framework作為CLR,開(kāi)發(fā)更新的壓力和Mono不在一個(gè)數(shù)量級(jí)上,相信很快就能有對(duì)頁(yè)面認(rèn)證的較好支持。
安裝成功后可以運(yùn)行探針來(lái)檢查效果,比如使用邁克老貓同志的ASP.NET探針。
服務(wù)器基本信息 | |
服務(wù)器名稱(chēng): birdshome | 服務(wù)器IP地址: 127.0.0.1 |
.NET Framework語(yǔ)言種類(lèi): English (United States) | .NET Framework 版本: 2.050727.29 |
服務(wù)器端口: 80 | 服務(wù)器域名: localhost |
服務(wù)器時(shí)間: 11/18/2005 12:11:39 AM | 服務(wù)器操作系統(tǒng): Microsoft Windows XP |
服務(wù)器空間占用: .13 | 站點(diǎn)物理路徑: D:\Program Files\Apache Group\Apache2\htdocs\active\ |
服務(wù)器IE瀏覽器版本: 6.0000 | 服務(wù)器IIS版本: Apache/2.0.55 (Win32) |
服務(wù)器上次啟動(dòng)到現(xiàn)在已運(yùn)行: 12883秒 | 腳本超時(shí): 30000000秒 |
虛擬目錄絕對(duì)路徑: D:\Program Files\Apache Group\Apache2\htdocs\active\ | 執(zhí)行文件絕對(duì)路徑: D:\Program Files\Apache Group\Apache2\htdocs\active\SiteInfo.aspx |
服務(wù)器操作系統(tǒng)安裝目錄: C:\WINDOWS | 服務(wù)器應(yīng)用程序安裝目錄: C:\Program Files |
CPU個(gè)數(shù): 本計(jì)算機(jī)中有1個(gè)CPU | CPU類(lèi)型: x86 Family 15 Model 3 Stepping 3 |
CPU等級(jí): CPU等級(jí)為50528271 | CPU OEM ID: CPU的OEM ID為0 |
CPU頁(yè)面大?。?CPU中的頁(yè)面大小為4096 | |
75%的內(nèi)存正在使用 | 物理內(nèi)存共有510MB |
可使用的物理內(nèi)存有126MB | 交換文件總大小為1245MB |
尚可交換文件大小為750MB | 總虛擬內(nèi)存有2047MB |
未用虛擬內(nèi)存有1817MB | 邏輯驅(qū)動(dòng)器: A: ||C: ||D: ||E: ||F: ||G: ||H: ||J: ||K: ||L: ||M: |
最后一定要注意:由于apache本身對(duì)于url的目錄和文件名是大小寫(xiě)敏感的,所以asp.net的虛擬目錄必須要注意大小寫(xiě),否則訪問(wèn)的時(shí)候不會(huì)出錯(cuò),不過(guò)將會(huì)找不到任何的文件,就像訪問(wèn)一個(gè)空的目錄一樣。除了虛擬目錄名外,由于其它的aspx文件是mod_aspdotnet模塊載入的,所以又仍然是非大小寫(xiě)敏感的。
相關(guān)文章
利用ASP.NET MVC和Bootstrap快速搭建個(gè)人博客之文章打賞功能(六)
這篇文章主要介紹了利用ASP.NET MVC和Bootstrap快速搭建個(gè)人博客之文章打賞功能(六) 的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-07-07ASP.NET Core中的依賴(lài)問(wèn)題解決方法示例
這篇文章主要為大家介紹了ASP.NET Core中的依賴(lài)問(wèn)題解決方法示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08基于.Net中的數(shù)字與日期格式化規(guī)則助記詞的使用詳解
本篇文章是對(duì).Net中的數(shù)字與日期格式化規(guī)則助記詞的使用進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05C# 動(dòng)態(tài)編譯、動(dòng)態(tài)執(zhí)行、動(dòng)態(tài)調(diào)試
前幾天看到一篇關(guān)于.net動(dòng)態(tài)編譯的文章 .NET中的動(dòng)態(tài)編譯 ,很受啟發(fā)。2009-05-05ASP.NET Core應(yīng)用錯(cuò)誤處理之StatusCodePagesMiddleware中間件針對(duì)響應(yīng)碼呈現(xiàn)錯(cuò)誤頁(yè)面
這篇文章主要給大家介紹了關(guān)于ASP.NET Core應(yīng)用錯(cuò)誤處理之StatusCodePagesMiddleware中間件針對(duì)響應(yīng)碼呈現(xiàn)錯(cuò)誤頁(yè)面的相關(guān)資料,需要的朋友可以參考下2019-01-01ASP.NET學(xué)習(xí)CORE中使用Cookie身份認(rèn)證方法
本篇文章主要給大家詳細(xì)分析了ASP.NET學(xué)習(xí)CORE中使用Cookie身份認(rèn)證方法以及相關(guān)的實(shí)例代碼,有需要的朋友參考下吧。2018-01-01ASP.NET實(shí)現(xiàn)TreeView的XML數(shù)據(jù)源綁定實(shí)例代碼
這篇文章介紹了ASP.NET實(shí)現(xiàn)TreeView的XML數(shù)據(jù)源綁定實(shí)例代碼,有需要的朋友可以參考一下2013-11-11