总所周知,ASP.NET是微软公司的一项技术,是一个网站服务端开发的一种技术,它可以在通过HTTP请求文档时再在Web服务器上动态创建它们,就是所谓动态网站开发,它依赖运行于 IIS 之中的程序 。但是从成本上面来讲,Linux(开源)系统的花费比Windows Server系列少得多。因此,更多的企业愿意采用Linux作为服务器系统。由于ASP.NET依赖于IIS,导致有部分创业型公司在技术选型上会将ASP.NET筛选掉。我们伟大的程序猿,为了能让ASP.NET运行在Linux系统上,Mono就应运而生了,加上Jexus服务器,使得ASP.NET跨平台部署成为现实。
安装配置Mono+Jexus,当前采用的Linux版本是Ubuntu14.04 64位。
一、更新系统
使用指令:sudo apt-get update
sudo apt-get upgrade
二、建立编译环境
使用指令:sudo apt-get install build-essential automake autoconf bison gettext libtool libglib2.0-dev libfreetype6-dev libfontconfig-dev
三、安装依赖库
使用指令:sudo apt-get install libgif-dev libtiff4-dev libpng12-dev libexif-dev libx11-dev libxft-dev libjpeg-dev
四、下载并编译安装Mono需要的GDI+兼容API的库Libgdiplus
tar jvxf libgdiplus-2.10.tar.bz2
cd libgdiplus-2.10
./configure --prefix=/usr
make
sudo make install
cd ..(返回前目录)
五、下载并编译安装Mono
使用指令:wget (可通过在 中选择需要的Mono版本进行下载,注:选择mono 2.10.8 或更高版本)
tar jvxf mono-4.0.3.20.tar.bz2
cd mono-4.0.3.20
./configure --prefix=/usr
make
sudo make install
cd ..(返回前目录)
使用mono -V查看Mono版本,以检查是否安装成功,成功如下图
六、下载并安装Jexus
tar jvxf jexus-5.6.4.tar.gz
cd jexus-5.6.4
sudo ./install(Jexus默认安装到/usr/jexus文件夹里)
cd /usr/jexus
sudo ./jws start(启动Jexus)
当出现OK的时候证明Jexus已经成功跑起来了,访问 服务器IP(默认80端口)/info,看到Welcome to Jexus!即成功。
在此你可能认为这还不算是将ASP.NET运行在Jexus上,现在我们在Visual Studio创建ASP.NET空的Web项目,在其中创建一个index.aspx的窗体。将其发布上传到Linux服务器的/var/www/hellolinux里(tip:sudo mkdir 创建文件夹名)
在Linux上使用指令:cd /usr/jexus/siteconf
sudo vi hellolinux
录入:port=8080
root=/ /var/www/hellolinux
:wq保存一下
cd /usr/jexus
./jws restart
当看到OK,访问服务器IP:8080(jexus有默认首页配置)
这样。ASP.NET就通过Mono+Jexus运行在了Linux系统上了。
下面关于Mono与Jexus的文章您也可能喜欢,不妨看看:
CentOS 7 上部署Mono 4 和Jexus 5.6
Ubuntu 15.04 和 CentOS 7 部署 .NET,Mono and DNX
在Linux(Ubuntu/openSUSE/CentOS)下配置ASP.NET(Apache + Mono)