Asp.Net跨平台:Ubuntu14.0+Mono+Jexus+Asp.Net
Asp.Net跨平台的文章园子里有很多,这里给自己搭建的情况做一下总结,方便以后查看。
参考网站:
http://www.linuxdot.net/(Linux DotNET大本营 )
http://www.cnblogs.com/shanyou/p/4677569.html(张善友)
http://www.cnblogs.com/haoxilu/p/3813907.html
一、系统安装
使用VMware +Ubuntu14.04 64位系统。这个没什么好说的。
二、环境配置
1、对当前的系统进行更新
sudo apt-get update
sudo apt-get upgrade
2、构建编译环境
sudo apt-get install bison libglib2.0-dev
sudo apt-get install libgif-dev libtiff4-dev libpng12-dev libexif-dev libx11-dev libxft-dev libjpeg-dev
3、安装libgdiplus
wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-2.10.tar.bz2
tar jvxf libgdiplus-2.10.tar.bz2
cd libgdiplus-2.10
./configure --prefix=/usr
make
sudo make install
cd ..(返回前目录)
注:在执行编译 make 时遇到了错误,如下:
gdiplus-private.h:33:31: fatal error: freetype/tttables.h: No such file or directory
#include <freetype/tttables.h>
^
compilation terminated.
make[2]: *** [adjustablearrowcap.lo] Error 1
make[2]: Leaving directory `/root/libgdiplus-2.10/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/libgdiplus-2.10'
make: *** [all] Error 2
root@ubuntu:~/libgdiplus-2.10# sudo ln -s /usr/X11/include/freetype2/freetype/ /usr/X11/include/freetype
ln: failed to create symbolic link ‘/usr/X11/include/freetype’: No such file or directory
解决办法参考链接:http://www.cnblogs.com/24la/p/libgdiplus-install-error-record.html(以后再试试)
试了几次,我还是编译不过去。可能是人品问题吧,没办法,第一次接触Ubuntu,好多都懵懵懂懂的。
后来谷歌搜索到github上的一个链接:https://github.com/cjy37/linux-asp.net-installScript,这里有各linux主流系统Asp.Net跨平台环境安装的脚本命令,同时能安装很多当前的主流工具:Jexus |mysql | redis | haproxy | mongodb | nginx | Node.js 。
看到这个满心欢喜啊。一番折腾终于安装完成。

4、安装Mono
使用指令:wget http://download.mono-project.com/sources/mono/mono-4.0.5.1.tar.bz2
tar jvxf mono-4.0.5.1.tar.bz2
cd mono-4.0.5
./configure --prefix=/usr
make
sudo make install
cd ..(返回前目录)
使用mono -V查看Mono版本,以检查是否安装成功

后来发现用命令:sudo apt-get install mono-complete也可以将Mono相关的组件安装上,可以省去安装libgdiplus(好像是呵)
5、安装Jexus
使用指令:wget http://www.linuxdot.net/down/jexus-5.6.4.tar.gz
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)
在浏览器上输入:IP/info看到页面,就说明成功了

注:老版本./jws后加.,新版本./jws后不加.。
Jexus的配置多网站:http://www.cnblogs.com/24la/p/jexus-more-sites.html
Jexus 的各种使用方法详见http://www.linuxdot.net/bbsfile-3500
启动:sudo /usr/jexus/jws start
停止:sudo /usr/jexus/jws stop
重启:sudo /usr/jexus/jws restart
重启指定网站:sudo /usr/jexus/jws restart siteName
停止指定网站:sudo /usr/jexus/jws stop siteName
Jexus升级,最新版本 关注 www.jexus.org
设置Jexus服务开机自启动:
vi /etc/rc.local
按 i 键进入编辑模式添一句
/usr/jexus/jws start
按ESC退出编辑模式,输入 :wq保存文件
//Ubuntu加在 exit 0 前面。
三、配置Asp.Net 网站
1、在vs中创建项目,然后发布并上传到/home/jexusmono,windows上传文件到Ubuntu可以开启ssh-server服务,用WinSCP。开启ssh-server服务参考http://www.cnblogs.com/weixiao520/p/4771463.html
2、编辑Jexus配置文件
sudo vi /usr/jexus/siteconf/default
将配置文件中root节点的/var/www/default 改为/home/myub/桌面/WebRelease
重启Jexus服务:sudo /usr/jexus/jws restart
运行效果:

四、总结
这只是做了一个简单的测试,没做复杂的Asp.Net网站测试,复杂的可能还会有问题,有机会再一步一步试试深入下去,在次也感谢各位前辈。随着微软的开源,相信.Net跨平台会越来越好。
Asp.Net跨平台:Ubuntu14.0+Mono+Jexus+Asp.Net的更多相关文章
- Ubuntu(Linux) + mono + jexus +asp.net MVC3
Ubuntu(Linux) + mono + jexus +asp.net MVC3 部署 感谢 张善友 的建议,我把 微信订餐 由nginx 改成 jexus,目前运行状况来说,确实稳定了很多, ...
- Ubuntu(Linux) + mono + jexus +asp.net MVC3 部署
感谢 张善友 的建议,我把 微信订餐 由nginx 改成 jexus,目前运行状况来说,确实稳定了很多,再次感谢. 部署步骤参考 jexus官网:http://www.jexus.org/ htt ...
- centos 7.0 mono&Jexus V5.5.3安装
首先我们需要先配置一下yum源中mono的引用说明: 第一步: vi /etc/yum.repos.d/mono.repo 第二步:在刚打开的文件中编辑如下内容 [mono]name=monobase ...
- 将 ASP.NET Core 2.0 项目升级至 ASP.NET Core 2.1.3X
在上一篇文章ASP.Net Core 运行错误 Http Error 502.5 解决办法的最后有提到说,最推荐的升级办法是从2.0升级到2.1X版本. 操作如下 项目的例子直接使用https://g ...
- 将 ASP.NET Core 2.0 项目升级至 ASP.NET Core 2.1 RC 1
今天微软发布了 .NET Core 2.1 RC 1 ,虽然只是 Release Candidate 版,但已经可以在生产环境中使用. NET Core 2.1 RC is supported by ...
- 将 ASP.NET Core 2.0 项目升级至 ASP.NET Core 2.1
主要升级步骤如下: 将 .csproj 项目文件中的 target framework 改为 netcoreapp2.1 <TargetFramework>netcoreapp2.1< ...
- 【原生态跨平台:ASP.NET Core 1.0(非Mono)在 Ubuntu 14.04 服务器上一对一的配置实现-篇幅1】
鸡冻人心的2016,微软高产年. build 2016后 各种干货层出不穷. 1 Win10 集成了bash ,实现了纳德拉的成诺,Microsoft Love Linux!!! 2 跨平台 ,收 ...
- ASP.NET Core 1.0 开发记录
官方资料: https://github.com/dotnet/core https://docs.microsoft.com/en-us/aspnet/core https://docs.micro ...
- ASP.NET Core 1.0 部署 HTTPS
ASP.NET Core 1.0 部署 HTTPS ASP.NET Core 1.0 部署 HTTPS (.NET Framework 4.5.1) 提示 更新时间:2016年01月23日. 在目前介 ...
随机推荐
- iOS可视化动态绘制八种排序过程
前面几篇博客都是关于排序的,在之前陆陆续续发布的博客中,我们先后介绍了冒泡排序.选择排序.插入排序.希尔排序.堆排序.归并排序以及快速排序.俗话说的好,做事儿要善始善终,本篇博客就算是对之前那几篇博客 ...
- Sublime的使用
1.一个可扩展性强的编辑工具 2.如何安装扩展 通过View->Show Console菜单打开命令行. 按图操作: 在控制台输入,然后回车: import urllib.request,os; ...
- $.extend()的实现源码 --(源码学习1)
目标: $.extend({ add:function(a,b){ return a + b; } }) console.log($.a ...
- 算法与数据结构(十四) 堆排序 (Swift 3.0版)
上篇博客主要讲了冒泡排序.插入排序.希尔排序以及选择排序.本篇博客就来讲一下堆排序(Heap Sort).看到堆排序这个名字我们就应该知道这种排序方式的特点,就是利用堆来讲我们的序列进行排序.&quo ...
- Redis百亿级Key存储方案(转)
1 需求背景 该应用场景为DMP缓存存储需求,DMP需要管理非常多的第三方id数据,其中包括各媒体cookie与自身cookie(以下统称supperid)的mapping关系,还包括了supperi ...
- FILE文件流的中fopen、fread、fseek、fclose的使用
FILE文件流用于对文件的快速操作,主要的操作函数有fopen.fseek.fread.fclose,在对文件结构比较清楚时使用这几个函数会比较快捷的得到文件中具体位置的数据,提取对我们有用的信息,满 ...
- GJM : C#设计模式(1)——单例模式
感谢您的阅读.喜欢的.有用的就请大哥大嫂们高抬贵手"推荐一下"吧!你的精神支持是博主强大的写作动力以及转载收藏动力.欢迎转载! 版权声明:本文原创发表于 [请点击连接前往] ,未经 ...
- RTP与RTCP协议介绍(转载)
RTSP发起/终结流媒体.RTP传输流媒体数据 .RTCP对RTP进行控制,同步.RTP中没有连接的概念,本身并不能为按序传输数据包提供可靠的保证,也不提供流量控制和拥塞控制,这些都由RTCP来负责完 ...
- 学习笔记:7z在delphi的应用
最近做个发邮件的功能,需要将日志文件通过邮件发送回来用于分析,但是日志文件可能会超级大,测算下来一天可能会有800M的大小.所以压缩是不可避免了,delphi中的默认压缩算法整了半天不太好使,就看了看 ...
- 我将系统从Windows迁移至Linux下的点点滴滴
一.写在最前 由于本人的技术水平有限,难免会出现错误.本文对任何一个人有帮助都是我莫大的荣幸,任何一个大神对我的点拨,我都会感激不尽. 二.技术选型 在2013年8月低的时候,公司中了XXX市场监督局 ...