使用Jexus服务器运行ASP.NET Core 2.0程序

2018 年 8 月 10 日 DotNet

(点击上方蓝字,可快速关注我们)


来源:李朝强

cnblogs.com/ibeisha/p/jexus-net.html


写了篇关于.NET Core跨平台部署的文章《CentOS+Nginx+Supervisor部署ASP.NET Core项目》


主要讲述利用Nginx+CentOS+Supervisor+.NET Core2.1,来运行.NET Core程序,感兴趣的朋友可以看一下。今天向大家介绍.net core使用jexus服务器的配置方法。


关于Jexus的介绍,大家可以在https://www.jexus.org/这个网站网站了解,现在的版本是V5.8.3。


jexus的安装非常简单,按照官网的说法,只要执行以下命令就能完成jexus的安装。


curl https://jexus.org/release/x64/install.sh|sudo sh


就是下载和执行了一个sh脚本,让我们来看看,脚本中都写了些什么?


#!/bin/sh


/usr/jexus/jws stop >/dev/null 2>&1

cd /tmp


rm -rf jexus-5.8.* >/dev/null 2>&1

wget --no-check-certificate https://linuxdot.net/down/jexus-5.8.3-x64.tar.gz

tar -zxvf jexus-5.8.3-x64.tar.gz

cp -rf jexus /usr/

cd /usr/jexus

/usr/jexus/jws regsvr

rm -rf /tmp/jexus

rm -rf /tmp/jexus-5.8.* >/dev/null 2>&1


cd /usr/jexus

echo 'OK, Jexus has been installed in /usr/jexus.'


打开一看,步骤非常清晰吧。


我目前使用的服务器是CentOS7.0+,首次执行jexus脚本未发生任何异常。由于我的服务器安装了NGINX,因此,为避免端口冲突,我先关闭了Nginx进程。等安装成功后,我们可以在/usr/jexus目录下看到相关文件及配置信息,我们的站点配置,主要在sitconfig这个文件夹下。


默认,有个default的文件。打开看看:


######################

# Web Site: Default 

########################################


port=80

root=/ /var/www/default

hosts=*    #OR your.com,*.your.com



# addr=0.0.0.0

# CheckQuery=false

NoLog=true

# AppHost={CmdLine=/usr/local/x/xx;AppRoot=/usr/local/x;Port=5000}

# NoFile=/index.aspx

# Keep_Alive=false

# UseGZIP=false


# UseHttps=true

# ssl.certificate=/x/xxx.crt  #or pem

# ssl.certificatekey=/x/xxx.key

# ssl.protocol=TLSv1.0    # TLSv1.1 or  TLSv1.2...

# ssl.ciphers= 


# DenyFrom=192.168.0.233, 192.168.1.*, 192.168.2.0/24

# AllowFrom=192.168.*.*

# DenyDirs=~/cgi, ~/upfiles

# indexes=myindex.aspx

# rewrite=^/.+?\.(asp|php|cgi|pl|sh)$ /index.aspx

# reproxy=/bbs/ http://192.168.1.112/bbs/

# host.Redirect=abc.com www.abc.com  301

# ResponseHandler.Add=myKey:myValue



# Jexus php fastcgi address is '/var/run/jexus/phpsvr'

#######################################################

# fastcgi.add=php|socket:/var/run/jexus/phpsvr


# php-fpm listen address is '127.0.0.1:9000'

############################################

# fastcgi.add=php|tcp:127.0.0.1:9000


就是关于站点的一些配置信息。于是,我新建了一个配置文件,名为api.xxx.com的配置文件,复制default内容到该文件。根据应用情况,进行参数配置:


######################

# Web Site: api.kaola100.com

########################################


port=8018

root=/ /wwwroot/TiKu/Api

hosts=*    #OR your.com,*.your.com



# addr=0.0.0.0

# CheckQuery=false

NoLog=true

 AppHost={CmdLine=dotnet TiKu.Api.dll;AppRoot=/wwwroot/TiKu/Api;Port=5000}

# NoFile=/index.aspx

# Keep_Alive=false

# UseGZIP=false


# UseHttps=true

# ssl.certificate=/x/xxx.crt  #or pem

# ssl.certificatekey=/x/xxx.key

# ssl.protocol=TLSv1.0    # TLSv1.1 or  TLSv1.2...

# ssl.ciphers= 


# DenyFrom=192.168.0.233, 192.168.1.*, 192.168.2.0/24

# AllowFrom=192.168.*.*

# DenyDirs=~/cgi, ~/upfiles

# indexes=myindex.aspx

# rewrite=^/.+?\.(asp|php|cgi|pl|sh)$ /index.aspx

# reproxy=/bbs/ http://192.168.1.112/bbs/

# host.Redirect=abc.com www.abc.com  301

# ResponseHandler.Add=myKey:myValue



# Jexus php fastcgi address is '/var/run/jexus/phpsvr'

#######################################################

# fastcgi.add=php|socket:/var/run/jexus/phpsvr


# php-fpm listen address is '127.0.0.1:9000'

############################################

# fastcgi.add=php|tcp:127.0.0.1:9000


另外,我这台服务器上.net core环境已经安装过了,主要配置信息如下:


port=8018

root=/ /wwwroot/TiKu/Api

hosts=*    #OR your.com,*.your.com



# addr=0.0.0.0

# CheckQuery=false

NoLog=true

 AppHost={CmdLine=dotnet TiKu.Api.dll;AppRoot=/wwwroot/TiKu/Api;Port=5000}


port对监听端口进行配置,root指定当前项目的根目录。hosts默认吧。AppHost中,指定了应用启动执行的命令及网站根目录、端口等。


完成以上配置,我们执行jexus启动命令即可。


sh /usr/jexus/jws start


jexus常用命令:


Jexus包括如下操作命令(首先 cd /usr/jexus):

启动:sudo ./jws start 

停止:sudo ./jws stop 

重启:sudo ./jws restart 


也可jws start后面,可以指定启动/停止/重启哪个站点,如:


sudo ./jws start api.xxx.com


start后面跟配置文件名即可!


执行上述操作后,我们就可以看到运行起来的.NET Core程序了!


关于使用jexus的好处,借用网络上的一些话!


1、配置简便:在Jexus上,Asp.net core只是Jexus上的一个“站点”,因此,只需在Jexus上配置这个站点就行,无需其它配置;


2、操作统一:Jexus停止这个站点就自动停止asp.net core应用,同样地,启动这个站点就自动启动对应的core应用程序,无需多头操作;


3、高性能:Jexus本身是一款与nginx性能相当的高性能Web服务器,而Jexus与Asp.net core之间,是TCP转发,不是反向代理之类的HTTP转发,没有Http协议解析和重组的性能消耗,因此,Jexus能更好的呈现Asp.net Core的高性能优势;


4、端口自适应:在Jexus上,asp.net core不需要设置任何端口号,从而有效避免了多个asp.net core应用程序很可能出现的端口冲突这个让运维人员头疼的难题;


5、高度可靠性:如果core应用程序意外崩溃,Jexus会立即把它拉起来,从而做到7*24不间断运行;


6、支持WebSocket:因为是TCP转发,所以,对应用层协议没有限制。


7、AppHost的port值设为0,得到端口自适应的优势。


看完本文有收获?请转发分享给更多人

关注「DotNet」,提升.Net技能 

登录查看更多
0

相关内容

《Web语义学期刊》是一门跨学科的期刊,它基于对各个学科领域的研究和应用,为知识密集型和智能服务Web的发展做出了贡献。这些领域包括:知识技术、本体、代理、数据库和语义网格。显然,诸如信息检索、语言技术、人机交互和知识发现等学科也具有重要意义。涵盖了语义Web开发的所有方面。还鼓励发布大规模实验及其分析,以清楚地说明将语义引入现有Web界面,内容和服务中的方案和方法。该期刊强调发表论文,这些论文结合了不同学科领域的理论、方法和实验,以提供创新的语义方法和应用。《Web语义学期刊》涵盖了各种重要的应用领域,包括:电子商务、电子社区、知识管理、电子学习、数字图书馆和电子科学。官网地址:http://dblp.uni-trier.de/db/journals/ws/
【干货书】现代数据平台架构,636页pdf
专知会员服务
250+阅读 · 2020年6月15日
Python导论,476页pdf,现代Python计算
专知会员服务
254+阅读 · 2020年5月17日
【实用书】Python爬虫Web抓取数据,第二版,306页pdf
专知会员服务
115+阅读 · 2020年5月10日
【新书】Java企业微服务,Enterprise Java Microservices,272页pdf
TensorFlow Lite指南实战《TensorFlow Lite A primer》,附48页PPT
专知会员服务
68+阅读 · 2020年1月17日
【干货】大数据入门指南:Hadoop、Hive、Spark、 Storm等
专知会员服务
94+阅读 · 2019年12月4日
【电子书】Flutter实战305页PDF免费下载
专知会员服务
20+阅读 · 2019年11月7日
通过Docker安装谷歌足球游戏环境
CreateAMind
11+阅读 · 2019年7月7日
用Now轻松部署无服务器Node应用程序
前端之巅
16+阅读 · 2019年6月19日
Pupy – 全平台远程控制工具
黑白之道
43+阅读 · 2019年4月26日
I2P - 适用于黑客的Android应用程序
黑白之道
28+阅读 · 2019年3月6日
百度开源项目OpenRASP快速上手指南
黑客技术与网络安全
5+阅读 · 2019年2月12日
去哪儿网开源DNS管理系统OpenDnsdb
运维帮
21+阅读 · 2019年1月22日
如何用GitLab本地私有化部署代码库?
Python程序员
9+阅读 · 2018年12月29日
浅谈浏览器 http 的缓存机制
前端大全
6+阅读 · 2018年1月21日
Arxiv
34+阅读 · 2019年11月7日
Bidirectional Attention for SQL Generation
Arxiv
4+阅读 · 2018年6月21日
VIP会员
相关VIP内容
【干货书】现代数据平台架构,636页pdf
专知会员服务
250+阅读 · 2020年6月15日
Python导论,476页pdf,现代Python计算
专知会员服务
254+阅读 · 2020年5月17日
【实用书】Python爬虫Web抓取数据,第二版,306页pdf
专知会员服务
115+阅读 · 2020年5月10日
【新书】Java企业微服务,Enterprise Java Microservices,272页pdf
TensorFlow Lite指南实战《TensorFlow Lite A primer》,附48页PPT
专知会员服务
68+阅读 · 2020年1月17日
【干货】大数据入门指南:Hadoop、Hive、Spark、 Storm等
专知会员服务
94+阅读 · 2019年12月4日
【电子书】Flutter实战305页PDF免费下载
专知会员服务
20+阅读 · 2019年11月7日
相关资讯
通过Docker安装谷歌足球游戏环境
CreateAMind
11+阅读 · 2019年7月7日
用Now轻松部署无服务器Node应用程序
前端之巅
16+阅读 · 2019年6月19日
Pupy – 全平台远程控制工具
黑白之道
43+阅读 · 2019年4月26日
I2P - 适用于黑客的Android应用程序
黑白之道
28+阅读 · 2019年3月6日
百度开源项目OpenRASP快速上手指南
黑客技术与网络安全
5+阅读 · 2019年2月12日
去哪儿网开源DNS管理系统OpenDnsdb
运维帮
21+阅读 · 2019年1月22日
如何用GitLab本地私有化部署代码库?
Python程序员
9+阅读 · 2018年12月29日
浅谈浏览器 http 的缓存机制
前端大全
6+阅读 · 2018年1月21日
Top
微信扫码咨询专知VIP会员