我的服务器出了点问题,所以我决定完全卸载 Mono 并重新安装。大错误。它不会重新安装,而且服务器坏了,除非我修好它。
首先,我卸载了所有与 mono 相关的东西。
然后,我按照这些说明在 Ubuntu 16.04.1 上安装 http://www.mono-project.com/docs/getting-started/install/linux/
我确认文件 /etc/apt/sources.list.d/mono-xamarin.list 包含
deb http://download.mono-project.com/repo/debian wheezy main
deb http://download.mono-project.com/repo/debian wheezy-apache24-compat main
然后我输入“apt-get install mono-complete”
然后 apache2 无法重新加载。经过一番挖掘,发现 mod_mono 已经不见踪影。如果我查看 /etc/apache2/mods-available/,mod_mono 就不存在了。
为什么 mod_mono 安装失败?我该如何安装?谢谢!
顺便说一句,我也尝试重新安装没有 Xamarin 存储库的默认 Ubuntu 版本,但也无法安装 mod_mono。
答案1
感谢 SushiHangover 提供的链接。
这解决了这个问题:
apt-get install libapache2-mod-mono
此外,httpd.conf 还包含
#MonoAutoApplication enabled
RewriteMap lowercase int:tolower
<IfModule fcgid_module>
<FilesMatch ".(aspx|axd|asmx|ashx|asax|ascx|soap|rem|axd|cs|config|Config|dll)$>
SetHandler fcgid-script
FCGIWrapper /usr/bin/fastcgi-mono-server4 .aspx
FCGIWrapper /usr/bin/fastcgi-mono-server4 .asmx
FCGIWrapper /usr/bin/fastcgi-mono-server4 .ashx
FCGIWrapper /usr/bin/fastcgi-mono-server4 .asax
FCGIWrapper /usr/bin/fastcgi-mono-server4 .ascx
FCGIWrapper /usr/bin/fastcgi-mono-server4 .soap
FCGIWrapper /usr/bin/fastcgi-mono-server4 .rem
FCGIWrapper /usr/bin/fastcgi-mono-server4 .axd
FCGIWrapper /usr/bin/fastcgi-mono-server4 .cs
FCGIWrapper /usr/bin/fastcgi-mono-server4 .config
FCGIWrapper /usr/bin/fastcgi-mono-server4 .Config
FCGIWrapper /usr/bin/fastcgi-mono-server4 .dll
Options +ExecCGI
</FilesMatch>
FcgidInitialEnv MONO_FCGI_APPCONFIGDIR /etc/mono-fastcgi
FcgidMaxRequestLen 204800000
</IfModule>
它抱怨无法找到 /usr/bin/fastcgi-mono-server4。不确定为什么要这样配置,但我注释了整个下部部分并取消注释了 MonoAutoApplication,现在它可以正常工作了。