Asp.Net跨平臺:Ubuntu14.0+Mono+Jexus+Asp.Net
Asp.Net跨平臺的文章園子裡有很多,這裡給自己搭建的情況做一下總結,方便以後檢視。
參考網站:
一、系統安裝
使用VMware +Ubuntu14.04 64位系統。這個沒什麼好說的。
二、環境配置
1、對當前的系統進行更新
sudo apt-get update
sudo apt-get upgrade
2、構建編譯環境
sudo apt-get install bison libglib2.0-dev
sudo apt-get install libgif-dev libtiff4-dev libpng12-dev libexif-dev libx11-dev libxft-dev libjpeg-dev
3、安裝libgdiplus
wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-2.10.tar.bz2
tar jvxf libgdiplus-2.10.tar.bz2
cd libgdiplus-2.10
./configure --prefix=/usr
make
sudo make install
cd ..(返回前目錄)
注:在執行編譯 make 時遇到了錯誤,如下:
gdiplus-private.h:33:31: fatal error: freetype/tttables.h: No such file or directory #include <freetype/tttables.h> ^ compilation terminated. make[2]: *** [adjustablearrowcap.lo] Error 1 make[2]: Leaving directory `/root/libgdiplus-2.10/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/root/libgdiplus-2.10' make: *** [all] Error 2 root@ubuntu:~/libgdiplus-2.10# sudo ln -s /usr/X11/include/freetype2/freetype/ /usr/X11/include/freetype ln: failed to create symbolic link ‘/usr/X11/include/freetype’: No such file or directory
試了幾次,我還是編譯不過去。可能是人品問題吧,沒辦法,第一次接觸Ubuntu,好多都懵懵懂懂的。
後來谷歌搜尋到github上的一個連結:https://github.com/cjy37/linux-asp.net-installScript,這裡有各linux主流系統Asp.Net跨平臺環境安裝的指令碼命令,同時能安裝很多當前的主流工具:Jexus |mysql | redis | haproxy | mongodb | nginx | Node.js 。
看到這個滿心歡喜啊。一番折騰終於安裝完成。
4、安裝Mono
使用指令:wget http://download.mono-project.com/sources/mono/mono-4.0.5.1.tar.bz2
tar jvxf mono-4.0.5.1.tar.bz2
cd mono-4.0.5
./configure --prefix=/usr
make
sudo make install
cd ..(返回前目錄)
使用mono -V檢視Mono版本,以檢查是否安裝成功
後來發現用命令:sudo apt-get install mono-complete也可以將Mono相關的元件安裝上,可以省去安裝libgdiplus(好像是呵)
5、安裝Jexus
使用指令:wget http://www.linuxdot.net/down/jexus-5.6.4.tar.gz
tar jvxf jexus-5.6.4.tar.gz
cd jexus-5.6.4
sudo ./install(Jexus預設安裝到/usr/jexus資料夾裡)
cd /usr/jexus
sudo ./jws start(啟動Jexus)
在瀏覽器上輸入:IP/info看到頁面,就說明成功了
注:老版本./jws後加.,新版本./jws後不加.。
啟動:sudo /usr/jexus/jws start
停止:sudo /usr/jexus/jws stop
重啟:sudo /usr/jexus/jws restart
重啟指定網站:sudo /usr/jexus/jws restart siteName
停止指定網站:sudo /usr/jexus/jws stop siteName
設定Jexus服務開機自啟動:
vi /etc/rc.local
按 i 鍵進入編輯模式添一句
/usr/jexus/jws start
按ESC退出編輯模式,輸入 :wq儲存檔案
//Ubuntu加在 exit 0 前面。
三、配置Asp.Net 網站
1、在vs中建立專案,然後釋出並上傳到/home/jexusmono,windows上傳檔案到Ubuntu可以開啟ssh-server服務,用WinSCP。開啟ssh-server服務參考http://www.cnblogs.com/weixiao520/p/4771463.html
2、編輯Jexus配置檔案
sudo vi /usr/jexus/siteconf/default
將配置檔案中root節點的/var/www/default 改為/home/myub/桌面/WebRelease
重啟Jexus服務:sudo /usr/jexus/jws restart
執行效果:
四、總結
這只是做了一個簡單的測試,沒做複雜的Asp.Net網站測試,複雜的可能還會有問題,有機會再一步一步試試深入下去,在次也感謝各位前輩。隨著微軟的開源,相信.Net跨平臺會越來越好。