我试图让 Mono 在 CentOS 5 上工作,但到目前为止还没有取得太大的成功。这就是我所做的:
> yum install mono-web
> yum install xsp
> yum install mod_mono
> echo ":CLR:M::MZ::/usr/bin/mono:" > /proc/sys/fs/binfmt_misc/register
确保 /etc/httpd/conf/httpd.conf 中存在以下行:
Include conf.d/*.conf
确保 /etc/httpd/conf.d/mod_mono.conf 存在并且看起来像这样:
<IfModule !mod_mono.c>
LoadModule mono_module /usr/lib/httpd/modules/mod_mono.so
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
<Location /mono-ctrl>
SetHandler mono-ctrl
</Location>
</IfModule>
创建 /etc/httpd/conf.d/mono-vhost.conf 并插入以下内容:
<VirtualHost *>
DocumentRoot /var/www/html
Alias /demo /usr/local/lib/xsp/test
MonoApplications "/demo:/usr/local/lib/xsp/test"
MonoServerPath /usr/bin/mod-mono-server2
<Location /demo>
SetHandler mono
</Location>
</VirtualHost>
最后:
> apachectl restart
然后我浏览到http://my.server.ip.address/demo/index.aspx,希望看到一个 ASPx 页面;相反,我的浏览器提示我下载该文件。Apache 错误日志中没有任何内容。
我有其他网站通过 PHP 在这个盒子上运行,它们运行良好,所以我很确定这只是 mod_mono 很奇怪,但对于我的生活,我无法弄清楚问题是什么。如果有人能指出我正确的方向,将不胜感激。