******************************************************
*** Jexus web server for linux V5.8.x İװʹ ***
******************************************************

Jexus web server for linux һmonoLinux/unixϵͳ֮ϣ֧ASP.NETΪĹܵĸWEB
www.linuxdot.netJexus web serverٷվҲǹȨmono.NETƽ̨ۺ
ΪȷɳԷչJexusѿʼܸλʿʽ֧ʺ j66x@163.com 


Jexus V5.8.x¹ص㣺
01ASP.NETJexusĺĹܡȶԡԻǲдٶȣJexusASP.NETֶ֧Ƿǳģ
02֧Fast-CGIЭ顣ͨFast-CGIJexusְ֧PHPڵӵFast-CGIܵWEBӦã
03ǿķܣͬʱֶ֧Ŀ긺ؾ⡣Fast-CGIԼJexusվֲͬԴaspx/php/jspʵ޷ϡ
04бȷٶȸġ˿תܣʺϾ߱httpܵıӦó򣬱Asp.net CoreTomcat.
05߱ʽǿURLдܣ
06ӵǿý֧֧FLV/F4VƵļ϶ţ֧΢ƽý弼
07߱ɿصġASP.NETǰû桱ܴASP.NETվĳӦٶȣ
08֧HttpsSSLݰȫ
09лʵõּ⹦ܣԶֹѱʶķǷ
10ṩOWIN׼Ӧòӿڣ֧NancySignalRȷOWIN׼Ӧÿܣ֧WebSocket
11ṩAppHostܣܽasp.net corenode.jstomcatȡʽԿ̨ʽеwebӦóվϣjexusͳһ



һװ

װǰ׼

* Ҫlibc2.3.2߰汾֧֣ldd --versionѯ汾Ҫhttpsϵͳл߱libsslļlibssl.so.0.9.8
* Jexus⣬ϵͳҪװmono 3.12.1 ߰汾ǰʽ汾mono 4.4.2.11
  MonoĹٷַǣwww.go-mono.com
  Monoصַhttp://www.go-mono.com/mono-downloads/download.html 
  Monoľ尲װ취ο www.linuxdot.net ϵй¡

A氲װ
  cd /tmp
  wget linuxdot.net/down/jexus-5.8.2-x64.tar.gz
  tar -zxvf jexus-5.8.2.tar.gz
  sudo mv jexus /usr/
  sudo rm jexus-*
  cd /usr/jexus

Bͨð氲װ£
  װ curl jexus.org/5.8.x/install | sh
   curl jexus.org/5.8.x/upgrade | sh

в
    JexusļJexusͿˡ
    ԣϵͳֻҪmonoѾɹװjexusͿֱʹãһҲȫҪ

    װֻҪ sudo ./jws startJWS°汾÷ʽб䣬Բjws.confļ
    ǿװWEBҸ÷Уֹͣɶ˿ڳͻJexus޷

    ȫ°װȽһĬϵվļ:/var/www/default½һ򵥵ҳindex.html
    ȻJexusļ(/usr/jexus/)ִСsudo ./jws start(Ҫroot)jexus
    1cat log/jws.log,jws־ļûʲôʾ
    2ûдʾһ̨ǷjexusĻӭҳַǣhttp://IPַ/info
    3ѾվзҳҳͿԷЩҳˡ



Jexus web server ãǱģдΪûõjexusĹԭ

 jexus ĹļУһǡ/usr/jexusһļļǡjws.conf

jws.conf  SiteConfigDir  SiteLogDir Ϣ
SiteConfigDir=siteconf      #ָǴվļsiteconfļУʹûjws.exeļ·
SiteLogDir=log              #ָjexus־ļlogļУʹûjws.exeļ·

Ҫʾ
ΪJexusָרļУһڴ־ļġ־ļСһǴվļġվļС
־ļбjexusϵͳдȨΪдjexusϵͳ־վ־Ҫ,װѾһļУlog
վļôվļĵط(װѾļУsiteconf)ʹֻһվҲļУΪjexusʱļжȡվõݡ
Ĭ£Jexusļнṹǣ
/usr/jexus             #JWSĿ¼
/usr/jexus/siteconf    #վĿ¼
/usr/jexus/log         #־Ŀ¼



ġվ

Jexusֶ֧վ㣬òͬĶ˿ڡ·վ
վļŵjws.confָվļڣļгjwsĿ¼ڵġsiteconfļУļгվļκļΪjexusΪκһļһͬվ
ÿվֻһļļļվƣ www.mysite.cnվļдɡmysiteȻҲдļԱԱ׼ʶ𣬵Ҫرע⣺ļпո
һվӵͬվͬûվֻһûվĬվһֻ̨һĬվ

*** ٴǿ
    1վļļпո
    2վļֻվļļļڣΪÿһļΪվļ

www.mysite.cnΪ˵˵վ
վļнһļļӦһЩ壨Ҫ÷Ա˽ļһվģ
վļļΪmysite

sudo miv mysite

AվõĻݣ
port=80                          # jexus WEB˿ڣȻ˿ڣ
root=/ /var/www/mysite           # վURL·Ŀ¼ͶӦ··ִ֮ÿոֿʹվһķվҲ

#ѡ
hosts=mysite.cn,www.mysite.cn    # վд÷磺*.mysite.cnֻһ*űʾĬվһ˿ֻһĬվ
indexs=index.aspx,index.htm      # ҳļдӢĶŷֿԲΪJWSϵͳгҳ
addr=0.0.0.0                     # 󶨵ĳIPַĬеַ0.0.0.0
aspnet_exts=mspx,ttt             # ³ֵĻԶASP.NETչչӢĶŷֿӵšϵͳгչ


Bʾ
ֻportroot磺
port=80
root=/ /var/www/default
עĿĺ壺port=80ָվķ˿80׼WEB˿ڣroot=/ /var/www/defaultָվĵ·ǡ/Ӧļеľ·ǡ/var/www/defaultվݱŵ/var/www/defaultļС


Cվõĸ߼ѡ Ķ飺ѧСڣ
վõĸ߼ѡȫǿѡӦøվʵҪѡ
ʹø߼ѡԼһ̨ڲͬġǿķƽ̨߷Ⱥ顣

1ʹáURLд
URLдָWEBߵURL·ԴָƥͺƥΪһʵRUL·Դ

磬ϣ˷ʡ.php͵ļʱ /404.html ļ
rewrite=^/.+?\.(asp|php|cgi)$ /404.html
# ʽ
# rewrite=ĺɣ֮һոֿ
  ոǰƥʽURLƥ
  ոƥĿ꣺ָûʵ·ϺǰƥĸӦ

磺
ѡ/bbsΪ/bbs/index.aspxѡ/bbs/file-1 ƥΪ /bbs/show.aspx?id=1
rewrite=^/bbs$ /bbs/index.aspx
rewrite=^/bbs/file-([0-9]{1,6})$ /bbs/show.aspx?id=$1
ʽͣrewriteĵȺźݣÿոֿǰ벿һʽҪURLдģûеģurl·ʽ벿ǵûURLϺǰʽʱJWSӦдͷʵʵURL·

2ֹĳIPIPηվ
AֻĳЩIPַվܣ
    Ĭ£IPַʡֹIPַô֮IPַԶ
    øʽ磺
    allowfrom=1.2.3.*
    AllowFrom=2.2.3.3
BֹĳIPĳIP˷վܣ
    Ĭ£ΪաֹҪֹʵIPַΣϺһ򣺺ǰӼ
    øʽ磺
    denyfrom=111.222.111.*
    denyfrom=101.201.1.132

3ֹĳļмļе
DenyDirs=վļ·URL· /abcfiles ~/abcfiles·ӢĶŷֿ

4ǷURLȽаȫ
ѡĬtrueҪ飬ȷҪصѡԲʽ£
checkquery=false
ص߷ٶȣͰȫԣص

5NOFILEļ
nofile=/mvc/controller.aspx
עJexusеĹܣָûҪʵļʹʲôļӦ𡣣
ʾ·ɺԭRUL·JexusһX-Real-UriУ
ɣܣټURL Rewriteܣȫ԰URL·ʵ·뿪ﵽϢغͼURLá

6NOLOG־
nolog=yes
עվ־ܻWEBϵͳĵĴٶȣҲԵģ޷ϸ˽վķˣ

7ӿ
keep_alive=true
עĬʹóӣԲ

8
reproxy= /abc/ http://www.xxxx.com:890/abc/
ֵɱվRUL·ĿվURL·ɣ֮ÿոֿ
*ɣĿַжӢĶŷָ磺
reproxy=/abc/ http://192.168.0.3/abc/,http://192.168.0.4/abc/
ʱû/abc/ʱjexusͻѡһ̨зʣﵽؾȺЧ

9FAST-CGIṩķ
TCPӣ
fastcgi.add=Ҫfast-cgiļչ|tcp:fast-cgiIPַ:˿
磺fastcgi.add=php,php3|tcp:127.0.0.1:9000
unix sockets
fastcgi.add=Ҫfcgiļչ|socket:·
:fastcgi.add=php,php3|socket:/tmp/phpsvr


10gzipѹ
UseGzip=true    # Ĭ

ͣܺ󣬵ûʡ.htm.jsļʱJexusὫЩļGZIPѹ͸ûԽԼ

11JexusĹ̺վָûȨޣݣ
jws.confУһ䣺httpd.user=ϵͳѾڵһûhttpd.user=www-data

12JexusĹ̺ASP.NETվָASP.NET汾
jws.confУһ䣺Runtime=汾ţ磺Runtime=v4.0.30319
עֻʺjexus5.6µͰ汾

13áASP.NETǰøٻ桱վASP.NETӦõķӦٶȣСѹ
JexusеĹܡܺǿʵá
ǣҪWEBƽ̨ٻASPXҳм롰<%Response.AddHeader("PageCache-Time","60");%>һˣС60ǳʱʱ䣬λΪ롣

14HTTPSSSLȫ
  AȫʹõSSLãҪһsslΪûеsslվṩãַ֧֤ṩ˷㡣
     ǣ޸jws.confеġCertificateFile͡CertificateKeyFileֱд֤ļ˽Կļ·
  BΪָվSSLã޸վļֱΪssl.certificate͡ssl.certificatekeyĿд֤ļ˽Կļ·
ע1վhttpsportΪ443UseHttpsֵΪtrue
ע2Jexus HttpsҪΪlibsslĺ֧֣ûlibss.so.xxxļҪװopenssl
     ͨð棬libsslעᵽ /usr/etc/mono/configУļһУlibsslļ"libssl.so.1.0.0"
     <dllmap dll="libssl" target="/lib/x86_64-linux-gnu/libssl.so.1.0.0" />
     ڶ棬ֻҪlibssl jexusruntime/libļоУ磺
     sudo ln -s //lib/x86_64-linux-gnu/libssl.so.1.0.0  /usr/jexus/runtime/lib/libssl.so
ע3Ϊվ䱸SSL֤飬ôվhostsдҪSSLֵ֤֧һ¡

15ö̲з
Ĭ£jexusԵģʽģ̵ĺôü򵥣Լڴ棬Ҳԣ磬ԳַӶcpu˵ƣ󲢷϶ȵȡ
ˣڶCPUˣķϿ̣ߴٶȡ󲢷ԼȶԺݴ
̵İ취޸jws.confļеhttpd.processesУȥǰߵ#ţڵںҪĽcpu+1ͬʱ಻24
ǿ̺ASP.NETվSession״̬ʹinprocģʽӦʹáStateServerģʽWeb.configámachineKeySessionݶʧ

16ÿ̶ڴcpuԴ
5.5濪ʼõĲjws.confãʽǡ
httpd.MaxTotalMemory=й̿ĵڴλǡֽڡȡֵΧ256-ڴСͬʱƽÿ̲128m0ʾjexusڴĴСԶá
httpd.MaxCpuTime=̿CpuԴʱ䡣λǡ롱ȡֵΧ300-144000ʾô

17Ӧó˿ת
  ʽAppHost.Port=˿ں
  ָǽǰõվ˿ڵתӦó˿ڣ԰Ѹվ80˿ڵתAsp.net CoreӦó5000˿ϡ
  ˿ת뷴˿תܸߡ
  ע⣺һǶ˿ת·ǡ/վǶ˿תֻͬһϽС

18AppHostܣWEBӦó
  ʽAppHost={CmdLine=; AppRoot=·; Port=˿ں}
  ˵CmdLine:ѡʾwebӦó CmdLine=/var/www/mysite/webapp
        AppRoot:ѡʾӦóĹĿ¼磺AppRoot=/var/www/mysite
        Port:ѡʾӦó˿ڣ˿ӢĶŷָעûдһAppHost.portreproxyд˿ںţ޷תӦó򣩡
        Env:ѡʾӦóʱҪĻ Env=(PATH=/myhost/bin:$PATH),ӢĶŷֿ
        ErrLog:ѡʾӦó쳣ضָļд·
        OutLog:ѡʾӦóĿ̨ضָļд·
        User: ѡָûиӦóĬΪrootݡ
  ע⣺
    1AppHostAppHost.Portһ֧·
    2AppHostǽָľhttpwebӦójexus̽йAsp.Net CoreNode.jswebҪ塣

塢Jexus
1
   ԭjws.startJexus V5.8.xѾϲΪһһjwsһshellűļ

   ӦĹЧ
   jws start           : Jexus
   jws start վ    : ָվ
   jws restart         : Jexus
   jws restart վ  : ָվ
   jws stop            : ֹͣJexus
   jws stop վ     : ָֹͣվ
   jws regsvr          : עjexusҪȫֳ򼯣ֻڰװjexusãұһΣjexus治Ҫ
   jws status          : JexusǷ
   jws -v              : ʾJexusİ汾

   ע⣬ЩűӵӦrootӵпִȨޡ

2JexusԶ
   ǣ/etc/rc.localļļ롰/usr/jexus/jws startһСע⣬·ӦϵͳJWSʵ·Ҫ·дˡ



жأ
  1rc.localļɾֹӵĿԶJexusУûӹⲽͲˣ
  2ɾjexusļмȫݣֻɾ*.exe*.dllģվļȲɾԱ㽫ã



ߡϢϵʽ
  ٷվwww.jexus.org
  www.linuxdot.net
  QQȺ룺102732979103810355
  ַj66x@163.com


ˡҪ
  1Jexus V5.8.x ءʹáJexusߡߡά߲Jexus;áЧ֧Լκȷ򰵺ĳŵκֱӻӵΡ
  2ΪȷJexusԷչΪṩõķJexusҪõû֧չҵ˵Ĵ֧֣
    AøֻJexusƷʡʵüֵɹΪJexusķչҡ
    BΪѧ߽ѴɣʹĵúͼۣΪƹ㡢ռJexusĲӦף
    CԽJexusһЩҪļĵΪӢĻֲѷΪJexusשߣ
    Dÿ¹̻ɹ̵ĻᣬJexusԭWINDOWSϵWEBӦòLinuxϣ
    EͨJexusQQȺȸʱJexusBUGJexusĿߡάṩнĸֽ飻
    FΪJexusṩ֧֣򿪷ṩľΪJexusĳչṩԴȪJexusߵ֧˺ j66x@163.com 




