Hello Jexus
一、关于 CentOS
CentOS(Community Enterprise Operating System)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。两者的不同,在于CentOS并不包含封闭源代码软件。目前最新版本为 6.4。
CentOS 有如下特点:
- 可以把CentOS理解为Red Hat AS系列!它完全就是对Red Hat AS进行改进后发布的!各种操作、使用和RED HAT没有区别!
- CentOS完全免费,不存在RED HAT AS4需要序列号的问题。
- CentOS独有的yum命令支持在线升级,可以即时更新系统,不像RED HAT那样需要花钱购买支持服务!
下载地址请戳 http://mirror.bit.edu.cn/centos/6.4/isos/x86_64/。
其中,LiveCD 为体验版,netinstall 为网络安装,minimal 为最小化安装,bin-DVD1/bin-DVD2 为完整版。
二、关于 Mono
Mono 是一个由 Xamarin 公司主持的项目。该项目的目标是创建一系列符合 ECMA 标准(Ecma-334 和 Ecma-335)的 .NET 工具,包括 C# 编译器和共通语言运行平台。。目前最新版本为 3.2。(更多请戳http://zh.wikipedia.org/wiki/Mono)
下载地址为 http://download.mono-project.com/sources/mono/。
三、关于 Jexus
Jexus web server for linux 是一款基于.NET兼容环境,运行于Linux/unix操作系统之上,以支持ASP.NET为核心功能的高性能WEB服务器。目前最新版本为 5.4。
Jexus 有如下功能特点:
- 支持ASP.NET。这是Jexus的核心功能。无论是稳定性、易用性还是并发承载能力、并行处理速度,Jexus对ASP.NET的支持都是非常优秀的;
- 支持Fast-CGI。通Fast-CGI,Jexus能支持包括PHP在内的所有拥有Fast-CGI服务功能的WEB应用;
- 具备基于正则表达式的强大的URL重写功能;
- 具有强劲的反向代理功能。支持多目标负载均衡,支持本地网站与远程网站无缝整合;
- 拥有强大的流媒体支持能力,支持FLV/F4V视频文件拖动播放,支持微软平滑流媒体技术;
- 支持“服务器推送”技术,配备了相应的服务器端、客户端开发接口,是开发现代WEB应用的利器;
- 具备可控的“ASP.NET前置缓存”,能最大限度地提高ASP.NET网站的承载能力和响应速度;
- 支持Https,具有SSL加密数据安全传输能力;
- 具有基础而实用的入侵检测功能,能自动终止已被识别的非法请求;
- 安装部署非常简便,操作使用极为简单。
更多请戳http://www.linuxdot.net/bbsfile-3084。
四、环境准备
1.安装 CentOS
在虚拟机中搭建一个干净的 CentOS 环境。这里选择 CentOS 6.4 Minimal 清爽版本,安装后用 yum update 命令更新系统。
build-essential (或gcc和gcc-c++)
automake
autoconf
pkgconfig
(2)Libgdiplus所需要的支持库:
giflib-devel
libpng-devel
libjpeg-devel
libtiff-devel
libX11-devel
libexif-devel
libXft-devel
bison
gettext
glib2-devel
freetype-devel
4.安装 mono-3.0.7
(1)安装 mono-3.0.7(“git安装mono,常常需要系统中已经安装了mono 2.4以上版本。所以,git全新安装前,应该用源码安装一个低版本mono,并注意目标文件夹,一定要指定同一个地方,强烈建议用 --prefix=/usr 参数。” http://linuxdot.net/bbsfile-3304)
下载压缩包,解压
编译,安装 mono-3.0.7
mono -V 命令查看 mono-3.0.7 已经成功安装
5.安装 git
安装autoconf
6.通过 git 更新 mono 到 3.2.0 版本
git clone 下载 mono 最新版本
编译 mono-3.2.0,覆盖安装
mono -V 命令查看 mono-3.2.0(git 下载源码编译后,版本变成 3.3.0) 已经成功安装
mono-3.2.0 增加以下新特性(更多请戳:http://www.oschina.net/news/42616/mono-3-2-released):
- LLVM 更新到 3.2 版本,带来更多的编译优化
- 默认使用 SGen Garbage Collector 垃圾收集器
- Low pause mode
- Low promotion nursery
- 高精度的堆栈扫描 Mostly precise stack scanning
- Mono 3.2 基础类库可完整构建 Xamarin 的移动 profile
- 降低编译后的文件包大小
- 性能提升
五.安装 jexus
1.安装 Jexus
下载 Jexus 源码,解压
Jexus 的安装已经简化,只需要 ./install 一个命令
启动Jexus
2.配置Jexus自动启动
打开 /etc/rc.local 文件,在最后一行添加 /usr/jexus/jws start(5.2 及之前版本为 /usr/jexus/jws.start)
按 esc,:wq! 命令保存退出。
3.配置防火墙开放 80 端口
用 iptables 命令修改防火墙配置,开放80端口(需要重启虚拟机)
4.测试
curl 访问 http://localhost/info ,返回“ welcome to jexus!”
ifconfig 查的虚拟机 ip 为 192.168.10.198
浏览器输入:http://192.168.10.198/info
六、部署 wcf 服务到 Jexus
1.部署 wcfservcie
这里把网站目录放在 /var/www 下。系统没有 www 文件夹,用 mkdir 命令创建
这里用 上一篇文章 编译得到的 wcf 服务,wget 下载并解压
ls -l 命令查看 wcfservice 目录
2.配置 jexus siteconf
jexus 网站配置文件为 /usr/jexus/siteconf/default
root 可以指定多个,以下为默认值
把 /var/www/default 修改为 wcfservcie 的路径,:wq! 命令保存退出。
restart 命令重启 jexus
通过浏览器访问 http://192.168.10.198/Service.svc 及 http://192.168.10.198/Service.svc?wsdl
至此,wcfservice 已经部署完毕
3.测试 wcfservice
测试逻辑如下
修改服务引用到 jexus 上的 wcfservice 地址
测试成功!
七、结语
对 jexus 的关注差不多四年,从 3.x 版本到现在 5.4 版本,jexus 已经趋于成熟。
这是一个 Hello world。感谢Jexus作者宇内流云对吾小白的耐心指导。
Hello Jexus的更多相关文章
- Jexus 5.8.2 正式发布为Asp.Net Core进入生产环境提供平台支持
Jexus 是一款运行于 Linux 平台,以支持 ASP.NET.PHP 为特色的集高安全性和高性能为一体的 WEB 服务器和反向代理服务器.最新版 5.8.2 已经发布,有如下更新: 1,现在大 ...
- 使用Visual Studio 2015 开发ASP.NET MVC 5 项目部署到Mono/Jexus
最新的Mono 4.4已经支持运行asp.net mvc5项目,有的同学听了这句话就兴高采烈的拿起Visual Studio 2015创建了一个mvc 5的项目,然后部署到Mono上,浏览下发现一堆错 ...
- 通过Jexus 部署 dotnetcore版本MusicStore 示例程序
ASPNET Music Store application 是一个展示最新的.NET 平台(包括.NET Core/Mono等)上使用MVC 和Entity Framework的示例程序,本文将展示 ...
- 结合Jexus + Kestrel 部署 asp.net core 生产环境
ASP.NET Core 是微软的全新的框架.这一框架的目标 ︰ 跨平台 针对云应用优化 解除 System.Web 的依赖. 获得下面三个方面的优势,你可以把它认为是一个C# 版本的NodeJS: ...
- .NET跨平台之运行与Linux上的Jexus服务器
谈及.NET跨平台,已经不是什么稀奇的事儿.今天我们就以Jexus服务器的部署为例.简单示范下.在这里,我用VMWare虚拟机来搭建Linux运行环境. Linux,我们选择CentOS7.大家可以前 ...
- 在.NET Core之前,实现.Net跨平台之Mono+CentOS+Jexus初体验
准备工作 本篇文章采用Mono+CentOS+Jexus的方式实现部署.Net的Web应用程序(实战,上线项目). 不懂Mono的请移步张善友大神的:国内 Mono 相关文章汇总 不懂Jexus为何物 ...
- Ubuntu下利用Mono,Jexus搭建Asp.Net(MVC) Web服务器
最近在Ubuntu上搭建了Asp.Net的Web服务器,其中遇到很多问题,整理一下思路,以备后用. 搭建环境以及配套软件 Ubuntu: 11.10 Mono:3.0.6 下载地址(http://do ...
- CentOS 6.3下 安装 Mono 3.2 和Jexus 5.4
最新更新参看: Centos 7.0 安装Mono 3.4 和 Jexus 5.6 2012年初写过一篇<32和64位的CentOS 6.0下 安装 Mono 2.10.8 和Jexus 5.0 ...
- 在Ubuntu13.04中配置Jexus+Mono3.2运行Asp.Net Mvc 4站点 (一)
这篇文章打算分两部分来写,第一部分介绍在Ubuntu中安装和配置.Net Framework4.5环境,第二部分介绍如何部署Asp.Net Mvc 4站点并确保Mvc4的几个重要特性都能正常工作. 一 ...
随机推荐
- 几个有趣的WEB设备API(二)
浏览器和设备之间还有很多有趣的接口, 1.屏幕朝向接口 浏览器有两种方法来监听屏幕朝向,看是横屏还是竖屏. (1)使用css媒体查询的方法 /* 竖屏 */ @media screen and (or ...
- 聊聊Unity项目管理的那些事:Git-flow和Unity
0x00 前言 目前所在的团队实行敏捷开发已经有了一段时间了.敏捷开发中重要的一个话题便是如何对项目进行恰当的版本管理.项目从最初使用svn到之后的Git One Track策略再到现在的GitFlo ...
- 红黑树——算法导论(15)
1. 什么是红黑树 (1) 简介 上一篇我们介绍了基本动态集合操作时间复杂度均为O(h)的二叉搜索树.但遗憾的是,只有当二叉搜索树高度较低时,这些集合操作才会较快:即当树的高度较高(甚至一种极 ...
- SQL必备知识点
经典SQL语句大全 基础 1.说明:创建数据库.说明:删除数据库drop database dbname3.说明:备份sql server--- 创建 备份数据的 device.说明:创建新表crea ...
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(68)-微信公众平台开发- 资源环境准备
系列目录 前言: 本次将学习扩展企业微信公众号功能,微信公众号也是企业流量及品牌推广的主要途径,所谓工欲善其事必先利其器,调试微信必须把程序发布外网环境,导致调试速度太慢,太麻烦! 我们需要准备妥当才 ...
- 微软新神器-Power BI横空出世,一个简单易用,还用得起的BI产品,你还在等什么???
在当前互联网,由于大数据研究热潮,以及数据挖掘,机器学习等技术的改进,各种数据可视化图表层出不穷,如何让大数据生动呈现,也成了一个具有挑战性的可能,随之也出现了大量的商业化软件.今天就给大家介绍一款逆 ...
- javascript工厂模式和构造函数模式创建对象
一.工厂模式 工厂模式是软件工程领域一种广为人知的设计模式,这种模式抽象了创建具体对象的过程(本书后面还将讨论其他设计模式及其在JavaScript 中的实现).考虑到在ECMAScript 中无法创 ...
- 【详细教程】论android studio中如何申请百度地图新版Key中SHA1值
一.写在前面 现在越来越多的API接口要求都要求提供我们的项目SHA1值,开发版目前还要求不高,但是发布版是必定要求的.而目前定位在各大APP中也较为常见,当下主流的百度地图和高德地图都在申请的时候会 ...
- WinForm设置控件焦点focus
winform窗口打开后文本框的默认焦点设置,进入窗口后默认聚焦到某个文本框,两种方法: ①设置tabindex 把该文本框属性里的tabIndex设为0,焦点就默认在这个文本框里了. ②Winfor ...
- BPM配置故事之案例2-文本默认值
Boss感觉方便了很多,然而采购部采购员阿海却还是有点意见,他跑来找小明. 阿海:现在申请都是我在提交,申请人和申请部门能不能不要每次都要填写啊,好麻烦的. 小明:没问题,这个简单. 小明在表单中把申 ...