asp.net - 安装(和部署)Mono ASP.Net 到 Redhat

标签 asp.net linux nginx mono redhat

我有一个 Asp.Net 应用程序(内置单声道),我正试图将其部署到 Linux Redhat 6 环境中。我尝试按照单声道网站上的说明进行操作:

http://www.mono-project.com/docs/web/aspnet/ http://www.mono-project.com/docs/getting-started/install/linux/

我能够安装和设置 nginx;但是我似乎没有安装 fastcgi-mono-server4。我一直在到处搜索,试图找到如何在没有运气的情况下在 Redhat 上安装它。我以为我会尝试使用 apache 指令,但我没有安装 mod_mono 的运气。我尝试使用 yum 安装 mono-devel 但我不断收到以下错误:

 Error: Package: libgdiplus0-3.12-1.x86_64 (download.mono-project.com_repo_centos_)
       Requires: libpng15.so.15()(64bit)
 Error: Package: libmonosgen-2_0-1-4.0.3.20-0.xamarin.4.x86_64 (download.mono-project.com_repo_centos_)
       Requires: libc.so.6(GLIBC_2.15)(64bit)
 Error: Package: libgdiplus0-3.12-1.x86_64 (download.mono-project.com_repo_centos_)
       Requires: libtiff.so.5()(64bit)
 Error: Package: mono-core-4.0.3.20-0.xamarin.4.x86_64 (download.mono-project.com_repo_centos_)
       Requires: libc.so.6(GLIBC_2.16)(64bit)
 Error: Package: libgdiplus0-3.12-1.x86_64 (download.mono-project.com_repo_centos_)
       Requires: libtiff.so.5(LIBTIFF_4.0)(64bit)
 Error: Package: mono-devel-4.0.3.20-0.xamarin.4.x86_64 (download.mono-project.com_repo_centos_)
       Requires: libc.so.6(GLIBC_2.15)(64bit)
 Error: Package: libgdiplus0-3.12-1.x86_64 (download.mono-project.com_repo_centos_)
       Requires: libc.so.6(GLIBC_2.14)(64bit)
 Error: Package: libgdiplus0-3.12-1.x86_64 (download.mono-project.com_repo_centos_)
       Requires: libpng15.so.15(PNG15_0)(64bit)

我有点不知所措。谁能指出正确的方向,让我在 redhat 上安装 mono 并使用 nginx 或 apache 正确部署我的 Asp.Net 应用程序?

最佳答案

我遇到了同样的问题。我需要重现生产环境(Fedora 17),但由于许多引用错误而无法安装单声道,类似于问题中提到的问题。

解决此问题的唯一方法是下载 mono 的源代码并按照他提到的步骤进行操作。

我将复制并粘贴在以下位置提到的程序:http://help.octopusdeploy.com/discussions/problems/39756-install-mono-on-centos-66

$ sudo yum -y install bison gettext glib2 freetype fontconfig libpng libpng-devel libX11 libX11-devel glib2-devel libexif glibc-devel urw-fonts java unzip gcc gcc-c++ automake autoconf libtool make bzip2 wget
$ cd /usr/local/src
$ sudo wget http://download.mono-project.com/sources/mono/mono-4.4.0.182.tar.bz2
$ sudo tar jxf mono-4.4.0.182.tar.bz2
$ cd mono-4.0.1
$ sudo ./configure --prefix=/opt/mono
$ sudo make 
$ sudo make install

一切完成后:

$ vi ~/.bashrc

添加以下几行:

export PATH=$PATH:/opt/mono/bin
export PKG_CONFIG_PATH=/opt/mono/lib/pkgconfig

在那之后,我能够在 Fedora 17 上正确编译单声道文件。

顺便说一下,我使用的是最新版本的 Mono,位于: http://download.mono-project.com/sources/mono/

编辑:

1) 要查看在根终端路径上使用单声道的效果,请关闭所有终端窗口并再次登录。更改 ~/.bashrc 的效果不会立即出现。

2) 老实说,我希望能够从非 root 终端运行单声道。为此,我们的想法是从非根终端编辑 ~/.bashrc 。该过程与上面相同,但添加“sudo”来为您的(非 root)用户编辑 bash 配置。

关于asp.net - 安装(和部署)Mono ASP.Net 到 Redhat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31974284/

相关文章:

c# - 是否可以在 ASP.NET 中保留页面之间的 View 状态?

asp.net - 如何更改 ASP.NET 标识中的错误消息

c - linux mkdir函数无法授予完全权限

docker运行nginx :latest hangs indefinitely

node.js - 使用 SSL 托管多个 node.js 站点

asp.net - CruiseControl.Net 仪表板 + Apache

c - 当文件路径中有空格时,如何使用 "system()"执行 bash 脚本?

c++ - SDL Window 最小化后无法恢复

nginx 大型静态文件在 AWS EBS 支持的服务器上服务缓慢

asp.net - 如何将文本验证为有效的 HTML?