在RedHat Enterprise 4 上安装 Mono1.9 (二)

最近由于项目的需要,希望能够在Linux系统上面运行我们的.Net项目,因此作了一些移植的尝试。也希望能过和园子里的朋友一起分享移植和使用Mono的经验。

上一篇文章(http://www.cnblogs.com/xingzhixp/archive/2008/05/24/MonoRehel41.html),我们已经安装好了Mono,为了使用ASP.Net,我们还必须安装和配置Apache。

Apache的安装过程,我就不说了,大家参考Apache的文档就可以。但是Mono似乎对Apache的版本很挑剔的,安装和配置不如Windows方便。我们先后安装了Apache 2.0.49,2.2.8 和2.0.52三个版本。
在2.0.49版本下,当我们运行Mono测试站点时,总是提示服务不可用。
在2.2.8版本下,Apache加载Mono组件时,提示错误:
Syntax error on line 8 of /etc/httpd/conf.d/mod_mono.conf: Cannot load /usr/lib/httpd/modules/mod_mono.so into server: /usr/lib/httpd/modules/mod_mono.so: undefined symbol: apr_sockaddr_port_get
最终,我们在2.0.52版本下成功运行了ASP.net的测试站点。

为了让Apache运行Asp.Net,需要修改Apache的配置文件,以便加载Mono的组件mod_mono.so.
找到Apache的配置文件,通常在Apache安装目录下,你可以找到httpd.conf文件。在RedHat E4 中这个文件位于/etc/httpd/conf/httpd.conf。
在文件中加入一句: Include /conf.d/mod_mono.conf ,(这是Mono配置文件的默认安装位置)。
在RedHat E4中,加了这一句后,启动Apache过程中会提示一个错误:can't open file /conf.d/mod_mono.conf 。后来我们发现在配置文件中有一句:Include /etc/httpd/conf.d/*.conf .因此我们把这个文件Copy到 /etc/httpd/conf.d/mod_mono.conf , 在Httpd.conf中去掉这个配置,再重新启动Apache,一切正常。

至此,Apache的配置完成。为了测试,我们把 /usr/lib/xsp/test 目录Copy到Apache的主目录,通常是Apache的安装目录/htdocs/,而在RedHatE4中是位于 /var/www/html/,好了,在浏览器打开页面http://localhost/test/index.aspx 应该一切顺利,我们看到了Asp.net页面。这是默认的.Net1.1的页面,为了在使用Asp.net 2.0, 我们还需要在httpd.conf 中加入:MonoServerPath /usr/bin/mod-mono-server2。现在我们可以打开2.0的页面了,看看http://localhost/test/index2.aspx 是否正常?

如果一切顺利,我们可以开始移植我们的系统了。接下来,我们将继续分享系统移植的过程。
标签: Mono, Apache
posted @ 2008-05-24 18:00 行知 阅读(1975) 评论(9) 编辑 收藏

 回复 引用   
#1楼 2008-05-24 18:37 leven[未注册用户]
我在Ubuntu上用新力德装mono后可以配置在最新的apache上.
 回复 引用   
#2楼 2008-05-24 18:40 分光光度计[未注册用户]
不错学习中
 回复 引用 查看   
#3楼 2008-05-24 22:36 datasky      
真是太巧了!前端时间我也有这种需要,做了一点尝试,可惜最后还是有点遗憾!
希望楼主能分享你的经验!谢谢!
在Linux上构建ASP.NET环境

 回复 引用 查看   
#4楼[楼主] 2008-05-25 00:56 行知      
@datasky
我们正打算测试Oracle,不知是否会有问题。

 回复 引用 查看   
#5楼 2008-05-25 01:23 lbq1221119      
恩 不错 欢迎你把mono的文章发到 sscli.cnblogs.com :)
 回复 引用   
#6楼 2008-05-25 10:44 一个农民[未注册用户]
感谢楼主,敢与尝试,愿意分享经验。我是比较看好mono的,因为中国的知识产权一定会不断完善的, 我相信也许有一天,mono的代码里面有许多是中国程序员贡献的, 现在只是开始,我们会努力的。
 回复 引用 查看   
#7楼 2008-05-26 15:28 minbear      
好样的,继续努力,加油~
 回复 引用   
#8楼 2008-05-27 09:21 lewis deng[未注册用户]
mono 數據并發有嚴重問題, 我測試了1年了, 還是不行, 不知道有沒有人解決這個問題.
 回复 引用   
#9楼 2008-06-30 19:41 mmm[未注册用户]
请问mono在apache下 asp.net 中文乱码如何解决呢?