很久以前就知道有mono了,可是没有非常在意,也没有实际使用。近来研究ASP.net,有在Linux平台运行ASP.net程序的需要,从而开始学习mono以及mono与Apache的关系。现就几个基本概念进行解释,以备后忘。
1. mono
.net平台的另外一种实现,平台包括CLR和FCL以及编译工具。官方网站为http://www.mono-project.com。
2. monoDevelop
开发基于mono平台的程序需要一个IDE,monoDevelop就是这样一个IDE,它本身用C# 开发,GUI基于GTK#,目前运行于Linux系统上。它最初由另一个名为SharpDevelop的IDE移植而来。但目前SharpDevelop和monoDevelop关系很小了。SharpDevelop目前只能运行于Windows系统上。
3. mod_mono与XSP以及mod_mono_server
Linux系统上执行ASP.net程序的两种基本方式就是:
(1).aspx------>Apache----mod_mono---->mod_mono_server
这种方式下,Apache把aspx请求通过mod_mono转交于mod_mono_server处理。
(2).aspx------>XSP
这种方式下,.aspx直接由XSP处理,不需要Apache存在。XSP是一个独立的WebServer,由C#开发。
需要注意的是,mod_mono_server本身是由XSP经过简单修改而来的,安装XSP的时候,自动把mod_mono_server.so安装上。