開始摸 Linux 平台上的 mono 跑 ASP.NET

很久前 Linux 就可以跑 ASP.NET 了, 一直沒有機會好好玩一玩 , 趁過年期間來玩玩

我家 Server 已經用很久 Cent OS 5.2 了

所以用 rpm 套件也只能裝舊版的 mono (最新版是 2.2 支援 c# 3.0 , asp.net 3.5 , linq ..)

要安裝 mono 跑 asp.net 很簡單 , 若用 yum search mono 套件會發覺有好多套件可以安裝

當然我發現有 mono-web 及 mod_mono 這兩個東西應該就是我要的 , mod_mono 是 for apache 的模組 , 類似 mod_php

於是乎我直接 yum install mono-web mod_mono , yum 會自動幫其他所需的 rpm 也一併安裝 , 一開始以為這沒問題

想不到跑 ASP.NET 2.0 的頁面 , Web 頁面會當住不動

 

等好久 …. 終於有錯誤訊息了 , 原來少了 System.Data 物件 ?

這物件難道沒有內建嗎 ??  我的媽啊 . … 用 yum search 之後 , 原來還有個 mono-data 這個套件

於是乎 yum install mono-data  終於可以跑了

安裝完畢後 , /etc/httpd/conf.d/ 下會發現多了個 mod_mono.conf

可是這個設定檔預設是跑 ASP.NET 1.1 的 , 需要修改成 ASP.NET 2.0 我就加上了幾行

我的內容如下

<IfModule !mod_mono.c>
LoadModule mono_module /usr/lib64/httpd/modules/mod_mono.so
MonoUnixSocket /tmp/.mod_mono_server2
MonoServerPath /usr/bin/mod-mono-server2
MonoAutoApplication enabled
# 上面三行是為了要跑 asp.net 2.0 用的

AddType application/x-asp-net .aspx
AddType application/x-asp-net .asmx
AddType application/x-asp-net .ashx
AddType application/x-asp-net .asax
AddType application/x-asp-net .ascx
AddType application/x-asp-net .soap
AddType application/x-asp-net .rem
AddType application/x-asp-net .axd
AddType application/x-asp-net .cs
AddType application/x-asp-net .config
AddType application/x-asp-net .Config
AddType application/x-asp-net .dll
DirectoryIndex index.aspx
DirectoryIndex Default.aspx
DirectoryIndex default.aspx
</IfModule>

好了. 設定完畢後放了個測試頁在 aspnet.pigo.idv.tw

繼續研究中

10 則評論在 開始摸 Linux 平台上的 mono 跑 ASP.NET.

  1. 大大可以教一下怎樣安裝嗎?….
    我是LINUX白癡….
    因緣際會下剛剛好有這個需求 又很急..
    如果大大方便的話…可否教我一下
    redhat 8.0 or 9.0 可以裝嗎?

    小弟先謝了

發佈留言