日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > asp.net >内容正文

asp.net

[.NET跨平台]Jexus独立版本的便利与过程中的一些坑

發(fā)布時(shí)間:2023/12/4 asp.net 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [.NET跨平台]Jexus独立版本的便利与过程中的一些坑 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

本文環(huán)境與前言

之前寫過(guò)一篇相關(guān)的文章:在.NET Core之前,實(shí)現(xiàn).Net跨平臺(tái)之Mono+CentOS+Jexus初體驗(yàn)

當(dāng)時(shí)的部署還是比較繁瑣的,而且需要聯(lián)網(wǎng)下載各種東西..有興趣的可以看看,但是..已經(jīng)過(guò)時(shí)了..

雖然已經(jīng)出了.NET Core2.0 但是目前是預(yù)覽版本,而且部署來(lái)說(shuō) 相對(duì)比較麻煩.

今天我們主要來(lái)講講目前的Jexus5.8.2的獨(dú)立版本和過(guò)程中遇到的一些小坑

部署系統(tǒng)環(huán)境:CentOS 6.5 64位(無(wú)外網(wǎng))

部署Web應(yīng)用所用技術(shù):MVC5+EF6.1.3+Autofac

數(shù)據(jù)庫(kù):SQL Server 2008R2(注意:數(shù)據(jù)庫(kù)并不在Linux上部署而是在一臺(tái)Windows Server上)


參考資料:

https://www.linuxdot.net/bbsfile-4330

Jexus?- ASP.NET跨平臺(tái)從這里開(kāi)始!(Jexus官網(wǎng))

?

Jexus5.8.2的獨(dú)立版所支持的系統(tǒng):Centos 6.6以上版本,ubuntu server 14.04以上.(ps:我Centos 6.5..也成功了..目前沒(méi)問(wèn)題.)

?

正文

這里說(shuō)明一下為什么要用獨(dú)立版本.

1.部署方便快捷(這是一開(kāi)始沒(méi)想到的..)

2.沒(méi)外網(wǎng),無(wú)法下載相關(guān)資源(這是重點(diǎn)..)

好了,廢話不多說(shuō) 我們開(kāi)始部署過(guò)程:

?

一、下載?jexus獨(dú)立版的包:

因?yàn)槲覜](méi)有外網(wǎng),所以直接本地下載,然后拷貝到部署系統(tǒng)

下載地址:https://www.linuxdot.net/down/jexus-5.8.2-x64.tar.gz

?

解壓下載的包:

新手提示:記得進(jìn)入你壓縮包所在的文件夾在解壓..

tar -zxvf jexus-5.8.2-x64.tar.gz

?

你會(huì)得到一個(gè)叫jexus的文件夾

(然后就大功告成了!!,意不意外,驚不驚喜,刺不刺激?..)

↓向下看..↓向下看..↓向下看..?

?

三、移動(dòng)文件所在的位置到利于自己維護(hù)的地方

上面確實(shí)沒(méi)忽悠,解壓完了 就真完成了..

不過(guò)為了咱以后維護(hù)方便...還是繼續(xù)..

官方建議是移動(dòng)到/usr文件夾下..嗯 我也就隨大流了..

命令:

sudo mv jexus /usr

?清理原來(lái)的文件,(當(dāng)然..你用Xftp什么之類的可視化工具清除和復(fù)制..都行.., 這里用命令我是想是裝個(gè)B..)

sudo rm -rf /tmp/jexus*

?

創(chuàng)建目錄,部署Web站點(diǎn):

于jexus的默認(rèn)的網(wǎng)站配置文件指向的物理路徑是/var/www/default這里的.. (當(dāng)然,你也可以改)

所以,我們?cè)?var下創(chuàng)建www文件夾,在www下創(chuàng)建default文件夾

然后復(fù)制我們發(fā)布的文件進(jìn)去,如圖:

?

重啟一下我們的Juexs服務(wù):

進(jìn)入jexus文件夾

cd /usr/jexus

啟動(dòng)Jexus:

sudo ./jws start

重啟Jexus:

sudo ./jws restart

??

六、一些常用的Jexus命令:


啟動(dòng):sudo ./jws start重啟:sudo ./jws restart停止:sudo ./jws stop啟動(dòng)某個(gè)網(wǎng)站: sudo start 網(wǎng)站名重啟某個(gè)網(wǎng)站:sudo restart 網(wǎng)站名停止某個(gè)網(wǎng)站:sudo stop 網(wǎng)站名

?

至此,我們的部署工作就算真正的大功告成了!~

如下:

下面講一下坑和注意事項(xiàng)..

?

所遇到的坑與注意事項(xiàng)

1.錯(cuò)誤信息:System.IO.FileNotFoundException,Could not find find file 'var/www/default\bin\roslyn\csc.exe'

找不到這個(gè)roslyn\csc.exe文件..

嗯..這個(gè)東西呢..是VS2015改用roslyn編譯的,新的roslyn編譯器,支持c# 6.0語(yǔ)法。它放到bin里面去是為了支持Asp.NET應(yīng)用的動(dòng)態(tài)編譯。

我們可以刪除...

進(jìn)入要項(xiàng)目的nuget引用,刪除如下兩個(gè)包:

Microsoft.CodeDom.Providers.DotNetCompilerPlatform

Microsoft.Net.Compilers

重新編譯即可

這里重新解釋一下,以上是針對(duì)Mono5.0以下的版本,Mono5.0已經(jīng)支持了roslyn編譯器(感謝張善友老師的指導(dǎo).)

2.AutoFac報(bào)錯(cuò),信息如下:

..嗯,比較蛋疼,在Autofac注入的時(shí)候,報(bào)的是我的泛型類型..他竟然不識(shí)別..說(shuō)是非泛型..一口老血噴在屏幕上,,,

解決方案是..我發(fā)現(xiàn).當(dāng)時(shí)為了方便自動(dòng)注入,我所有的類都繼承了一個(gè)空的接口..是非泛型的..包括我這個(gè)倉(cāng)儲(chǔ)也繼承了..

所以在Mono超級(jí)無(wú)敵的強(qiáng)類型情況下..被認(rèn)為是非泛型的了 ?- - ..(注意:.NET是沒(méi)有這個(gè)問(wèn)題的可以編譯,可以運(yùn)行)

刪除這個(gè)繼承,手動(dòng)注入后.問(wèn)題解決..

?

3.小驚喜..

之前我那篇文章說(shuō)過(guò)....linux上的文件夾全小寫,你如果有大寫的文件夾比如Js,那么可能就資源加載不出來(lái) ...404... 需要手動(dòng)改小寫

但是這次我部署了之后,并沒(méi)有改..也能加載了..不知道是mono做的好事..還是Jexus..

當(dāng)然..少了個(gè)麻煩當(dāng)然是很開(kāi)心的..

這里也解釋一下,Mono有個(gè)環(huán)境變量叫:MONO_IOMAP,設(shè)置它為all的時(shí)候,就會(huì)支持大小寫..

Jexus的jws文件設(shè)置中也有這個(gè)選項(xiàng)可以設(shè)置.?

原文地址:http://www.cnblogs.com/GuZhenYin/p/6932237.html


.NET社區(qū)新聞,深度好文,微信中搜索dotNET跨平臺(tái)或掃描二維碼關(guān)注

總結(jié)

以上是生活随笔為你收集整理的[.NET跨平台]Jexus独立版本的便利与过程中的一些坑的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。