国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

在Apache環境下成功的運行ASP.NET的注意事項

2020-01-18 01:39:45
字體:
來源:轉載
供稿:網友
由于公司的產品在新的版本中,需要考慮一些新的部署方式,所以又抽空關注了一下.NET跨平臺的一些解決方案。雖然Mono Project對基于.NET開發的人來說都不陌生,不過由于Mono是比較狹義的跨平臺(因為它是OS級別的)概念。而從廣義的角度來說,使用不同的Web Server也可以算是一種垮平臺。

    緣起是由于IIS的口碑實在太濫,以至于不少的關鍵應用場景明文禁止安裝和使用IIS。而從ASP.NET的執行原理來看,它是通過一個Web Server處理tcp請求,然后把對ASPX執行和呈現交于使用.NET實現一個托管環境來進行的。所以使用Apache是目前最經濟的IIS替代品,而同時在Apache的sub-project正好有一個支持ASP.NET的模塊,并且已經開發到了2.0版本。我所配合使用的版本是
Apache HTTP Server 2.0.55mod_aspdotnet 2.0.0。安裝非常的簡單,兩個程序都是msi安裝包,一路next就搞定了。完了再在安裝目錄/htdocs下建一個目錄,如:active。

    不過其中有兩個小問題需要注意:
    一是:在安裝Apache HTTP Server的時候,如果我們機器上的80端口已被占用,需要選使用8080端口來安裝那個選項,當然這個端口是可以在httpd.conf文件里修改的。只是使用這種安裝方式安裝好以后需要手動的啟動apache2服務,使用cmd命令并進入apache安裝目錄,如:D:/Program Files/Apache Group/Apache2/bin,運行:apache -k install。

    二是:在配置aspdotnet_module的時候,我們需要在httpd.conf文件中追加以下清單:
#asp.net
LoadModule aspdotnet_module "modules/mod_aspdotnet.so"
AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj licx rem resources resx soap vb vbproj vsdisco webinfo
<IfModule mod_aspdotnet.cpp>

# Mount the ASP.NET example application
AspNetMount /active "J:/Working/BIVSS"
# Map all requests for /active to the application files
Alias /active "J:/Working/BIVSS"
# Allow asp.net scripts to be executed in the active example
<Directory "J:/Working/BIVSS">
Options FollowSymlinks ExecCGI
Order allow,deny
Allow from all
DirectoryIndex Default.htm Default.aspx
</Directory>
# For all virtual ASP.NET webs, we need the aspnet_client files
# to serve the client-side helper scripts.
AliasMatch /aspnet_client/system_web/(/d+)_(/d+)_(/d+)_(/d+)/(.*) "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"
<Directory "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
Options FollowSymlinks
Order allow,deny
Allow from all
</Directory>
</IfModule>
    本來這個配置文件很簡單,還有詳細的注釋。不過一定要注意上面的命令(非#開頭的行),都需要寫在一行上,如果是從網頁上copy要特別的小心,特別是AddHandler和AliasMatch這兩句容易被斷成兩行,那樣啟動apache服務就會失敗,并且提示非常簡單,根本不會告訴你配置文件加載錯誤。

    目前,這個mod_aspdotnet模塊最大的問題是在認證支持上的不足,比如windows和form都還不能支持,不過開源的東西更新還是很快的。由于使用Microsoft .NET Framework作為CLR,開發更新的壓力和Mono不在一個數量級上,相信很快就能有對頁面認證的較好支持。

    安裝成功后可以運行探針來檢查效果,比如使用邁克老貓同志的ASP.NET探針。
   
 服務器基本信息
 服務器名稱: birdshome 服務器IP地址: 127.0.0.1
 .NET Framework語言種類: English (United States) .NET Framework 版本: 2.050727.29
 服務器端口: 80 服務器域名: localhost
 服務器時間: 11/18/2005 12:11:39 AM 服務器操作系統: Microsoft Windows XP
 服務器空間占用: .13 站點物理路徑: D:/Program Files/Apache Group/Apache2/htdocs/active/
 服務器IE瀏覽器版本: 6.0000 服務器IIS版本: Apache/2.0.55 (Win32)
 服務器上次啟動到現在已運行: 12883秒 腳本超時: 30000000秒
 虛擬目錄絕對路徑: D:/Program Files/Apache Group/Apache2/htdocs/active/ 執行文件絕對路徑: D:/Program Files/Apache Group/Apache2/htdocs/active/SiteInfo.aspx
 服務器操作系統安裝目錄: C:/WINDOWS 服務器應用程序安裝目錄: C:/Program Files
 CPU個數: 本計算機中有1個CPU CPU類型: x86 Family 15 Model 3 Stepping 3
 CPU等級: CPU等級為50528271 CPU OEM ID: CPU的OEM ID為0
 CPU頁面大?。?CPU中的頁面大小為4096 
 75%的內存正在使用 物理內存共有510MB
 可使用的物理內存有126MB 交換文件總大小為1245MB
 尚可交換文件大小為750MB 總虛擬內存有2047MB
 未用虛擬內存有1817MB 邏輯驅動器: A: ||C: ||D: ||E: ||F: ||G: ||H: ||J: ||K: ||L: ||M:


    最后一定要注意:由于apache本身對于url的目錄和文件名是大小寫敏感的,所以asp.net的虛擬目錄必須要注意大小寫,否則訪問的時候不會出錯,不過將會找不到任何的文件,就像訪問一個空的目錄一樣。除了虛擬目錄名外,由于其它的aspx文件是mod_aspdotnet模塊載入的,所以又仍然是非大小寫敏感的。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 乳山市| 临沭县| 昭平县| 唐河县| 呈贡县| 古丈县| 奎屯市| 比如县| 阿拉尔市| 三明市| 红河县| 延寿县| 大竹县| 攀枝花市| 元阳县| 万安县| 灌云县| 湖口县| 玉龙| 梧州市| 彭泽县| 万盛区| 吉林市| 仁化县| 阿克陶县| 安图县| 桂东县| 濉溪县| 藁城市| 鸡泽县| 通辽市| 沈丘县| 靖安县| 石景山区| 那曲县| 内乡县| 寿光市| 浦北县| 雷波县| 大悟县| 金湖县|