ASP.NET跨平台实践:无需安装Mono的Jexus“独立版”

 

在Linux上运行ASP.NET网站或WebApi的传统步骤是,先安装libgdiplus,再安装mono,然后安装Jexus。在这个过程中,虽然安装Jexus是挺简便的一件事,但是安装mono就相对的比较费时费力了。

现在的情况不同了,为了克服安装 Mono 的繁琐,简化 ASP.NET WEB 应用在Linux操作系统上的部署过程,我们为Jexus 5.8.1制作了一款无需安装mono就能使用的“独立版”,该“独立版”支持64位的CentOS 6.5、Ubuntu 12.04以上版本的操作系统,能运行WebForm、Mvc3-5、WebService 以及WebApi,支持PHP,支持OWIN,支持反向代理,也就是说,无需安装mono的“独立版”与需要安装mono的“通用版”在功能上是完全相同的。

下面具体谈谈Jexus“独立版”的使用。

一,下载:

把 jexus压缩包下载到linux临时文件夹中。

cd /tmp

wget linuxdot.net/down/jexus-5.8.1-x64.tar.gz

该命令执行完成后,jexus独立版就被下载到了/tmp文件夹,大小为13.8m。

二,解压:

tar -zxvf jexus-5.8.1-x64.tar.gz

解压完成后,会在/tmp中得到一个jexus文件夹。

三,移动:

把jexus文件夹移动或复制到一个指定的工作位置,这个位置你自己决定,建议大家统一使用/usr路径。

sudo mv jexus /usr

然后清理/tmp中的jexus:

sudo rm -rf /tmp/jexus*

四,建一个简单的aspx网页用于测试:

由于jexus的默认的网站配置文件指向的物理路径是/var/www/default,所以,我们在/var下创建www文件夹,在www下创建default文件夹。创建完成后,进入 default文件夹,用vim编写一个简单的 index.aspx,仅如下两句:

1
2
<%@Page Language="C#"%>
<%=DateTime.Now.ToString()%>

保存后退出。

五,启动jexus并尝试访问默认网站:

cd /usr/jexus

sudo ./jws start

curl localhost

六,Jexus的“卸载”:

Jexus是“绿色软件”,除了jexus文件夹外,它不会在系统的其它地方写入任何文件,也不会注册任意信息,所以,它的卸载很简单:删除 jexus文件夹就行了。

七,Jexus的常用命令:

启动:sudo ./jws start

重启:sudo ./jws restart

停止:sudo ./jws stop

启动某个网站: sudo start 网站名

重启某个网站:sudo restart 网站名

停止某个网站:sudo stop 网站名

八、其它:

一)关于https:

https需要libssl的支持。处理方法是安装libssl(如果系统中已经存在就不需要安装,可以用 “sudo find / -name libssl.so.*” 查找),然后软连接到jexus/runtime/lib/libssl.so,如:ln -s /lib/x86_64-linux-gnu/libssl.so.1.0.0 /usr/jexus/runtime/lib/libssl.so

二)关于图形处理:

mono的 System.Drawing类库需要 libgdiplus.so 的支持。jexus独立版的runitme/lib文件夹下,已经有一个 libgdiplus.so,但并没有附带libgdiplus.so本身所需要的依赖库,需要另行安装,方法是,用 ldd libgdiplus.so 查看依赖缺失情况,然后安装它们,完成后,重启jexus。

另外的方法是,你可以单独安装libgdiplus(参照 www.linuxdot.net或博客园中张善友、小蝶惊鸿等高人的有关安装mono的文章),安装完成后,软连接到 jexus的runtime/lib中,连接名是libgdiplus.so,如:ln -s /usr/lib/libgdiplus.so /usr/jexus/runtime/lib/libgdiplus.so,(连接前需要把 runtime/lib中的libgduplus.so删除),然后重启jexus。

三)技术支持:

Jexus官网:www.jexus.org,技术社区:www.linuxdot.net,QQ群:103810355、102732979。

无需安装Mono的Jexus的更多相关文章

  1. ASP.NET跨平台实践:无需安装Mono的Jexus“独立版”

    在Linux上运行ASP.NET网站或WebApi的传统步骤是,先安装libgdiplus,再安装mono,然后安装Jexus.在这个过程中,虽然安装Jexus是挺简便的一件事,但是安装mono就相对 ...

  2. centos 6.X minimal 系列最小化安装完成后,安装mono和jexus过程小记录

    在使用虚拟机安装minimal版centos运行mono+jexus的时候,遇到了一些坑,记录一下,比如虚拟机访问不了网络,没wget命令没开放80端口,等等小问题,其他网上教程已经有mono+jex ...

  3. 安装mono和jexus,运行asp.net程序

    随笔- 62  文章- 1  评论- 7  raspberrypi(树莓派)上安装mono和jexus,运行asp.net程序   参考网址: http://www.linuxdot.net/ htt ...

  4. raspberrypi(树莓派)上安装mono和jexus,运行asp.net程序

    参考网址: http://www.linuxdot.net/ http://www.cnblogs.com/mayswind/p/3279380.html http://www.raspberrypi ...

  5. Centos、Ubuntu 安装 Mono、Jexus

    Mono是.NET的跨平台实现 在众多关于语言的争论中,.NET一直被以不能跨平台而诟病,Mono改变了这一现状. 有人当心Mono会涉及版权啥的问题.高深的偶不懂,不过我觉得Unity3D都能用,为 ...

  6. CentOS7 安装Mono及Jexus

    CentOS7安装Mono及Juxes 1 安装Mono 1.1 安装yum-utils 因为安装要用到yum-config-manager,默认是没有安装的,所以要先安装yum-utils包.命令如 ...

  7. Centos6下安装Mono和Jexus部署ASP.NET应用程序(纯干货)

    一.服务器 腾讯云VPS,Centos6.6系统 二.安装 1.yum升级 yum –y update 2.安装Mono所需要的库 yum -y install gcc gcc-c++ bison p ...

  8. Centos 7 安装Mono和Jexus 默认目录安装 (一)

    一.准备环境 yum -y install gcc gcc-c++ bison pkgconfig glib2-devel gettext make libpng-devel libjpeg-deve ...

  9. Linux搭建aspx.net环境之:CentOs 7 安装 Mono 和 Jexus 步骤记录

    1 因为163没有CentOs7的镜像.所以没有加这个 wget  http://mirrors.163.com/.help/CentOS6-Base-163.repo cd /etc/yum.rep ...

随机推荐

  1. Java基础08 继承

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 继承(inheritance)是面向对象的重要概念.继承是除组合(composit ...

  2. 第1章 软件测试基本概念(Week1,3月3日)

    一.对软件的认识 1. 什么是软件 2. 软件的分类 3. 软件开发的生命周期模型 (1)瀑布模型 (2)Scrum 其实对用瀑布模型这种臃肿不堪.要求严格.而无法适应软件开发周期变化的开发模型,渐渐 ...

  3. windows/Linux下安装maven

    Linux下安装maven 1.首先到Maven官网下载安装文件,目前最新版本为3.0.3,下载文件为apache-maven-3.3.9-bin.tar.gz,下载可以使用wget命令: 2.进入下 ...

  4. document.documentElement 和document.body 以及其属性

    js中document.documentElement 和document.body 以及其属性 (原来HTML里是document.body  --XHTML里是document.documentE ...

  5. 时间戳timestamp

    1 时间戳 数据库中自动生成的 唯一的 二进制的数据,通常用作给数据表的行添加版本戳的机制. timestamp与时间和日期无关. timestamp存储大小为8字节. 一个数据表只能有一个times ...

  6. 为什么要用BitSet

    BitSet适用于一类型boolean判断,Java的BitSet在这类型判断中非常高效. 举例说明:在判断前2000万数字中素数个数的程序中,如果使用最基本的素数判断代码: package com; ...

  7. 发现CSDN的一个小Bug,CSDN网站管理人员进来看看哈~~

    CSDN发博文的时候,说转载和翻译的博文不能被推荐到CSDN首页 刚刚我转了一个好的文章,一开始确实“发布到CSDN博客首页”的选项没了,但是之后我发现这个文章我要做点修改,就点击了编辑 之后这个选项 ...

  8. JQuery - 点击,滚动回到顶部 / 底部刷新回到顶部

    if ($(document).scrollTop() != 0) { //刷新之后,回到顶部 $('body,html').animate({ scrollTop: 0 }, 500); }

  9. js实现class样式的修改、添加及删除的方法

    本文实例讲述了js实现class样式的修改.添加及删除的方法.分享给大家供大家参考.具体分析如下: 比较常见的js前端功能,通过修改标签的className实现相应的功能. 具体代码如下: <t ...

  10. 基于visual Studio2013解决面试题之0301累加

     题目