32和64位的CentOS 6.0下 安裝 Mono 2.10.8 和Jexus 5.0


CentOS是一個基於RHEL的Linux發行版,其目的是為了提供一套免費與自由的企業等級Linux發行版。CentOS的名稱來自於「Community ENTerprise Operating System」,從名稱便可以知道這是一套由社區主導、並以企業級用戶為主要目標的操作系統。

目前CentOS是網頁服務器用途的主機中最廣為使用的一套Linux發行版。根據統計,目前大約有30%的Linux服務器使用CentOS。許多書籍、網站在介紹Linux的操作方式時,也會援引CentOS作為操作接口。通常CentOS都會在RHEL推出新版本之后,經過一小段時間的修改與測試之后再推出新的版本,而其版本編號大多也會跟隨RHEL的版本編號,例如目前最新版本的CentOS 6,其相對應的RHEL版本便是RHEL 6。

Mono 2.10.8 於已發布2011年12月19 發布,Jexus 5.0 最新版本是RC3 正式版本即將發布,帶來很多新特性。Jexus web server for linux 是一款基於.NET兼容環境,運行於Linux/unix操作系統之上,以支持ASP.NET為核心功能的高性能WEB服務器。

Jexus V5.0有如下功能特點:
01、支持ASP.NET。這是Jexus的核心功能。不管是穩定性、易用性還是並發承載能力、並行處理速度,Jexus對ASP.NET的支持都是非常優秀的;
02、支持PHP。Jexus自帶Fast-CGI管理模塊,能通過fcgi和php-fpm兩種方式對php進行良好的支持;
03、具備基於正則表達式的強大的URL重寫功能;
04、具有強勁的反向代理功能。支持多目標負載均衡,支持本地網站與遠程網站無縫整合;
05、擁有強大的流媒體支持能力,支持FLV/F4V視頻文件拖動播放,支持微軟平滑流媒體技術;
06、支持“服務器推送”技術,配備了相應的服務器端、客戶端開發接口,是開發現代WEB應用的利器;
07、具備可控的“ASP.NET前置緩存”,能最大限度地提高ASP.NET網站的承載能力和響應速度;
08、支持Https,具有SSL加密數據安全傳輸能力;
09、具有基礎而實用的入侵檢測功能,能自動終止已被識別的非法請求;
10、安裝部署非常簡便,操作使用極為簡單。

一、 更新系統  

yum –y update

二、安裝Mono源碼安裝需要的庫

yum -y install gcc gcc-c++ bison pkgconfig glib2-devel gettext make libpng-devel libjpeg-devel libtiff-devel libexif-devel giflib-devel libX11-devel freetype-devel fontconfig-devel  cairo-devel

三、安裝Mono需要的GDI+兼容API的庫Libgdiplus

cd /usr/local/src/

wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-2.10.tar.bz2

tar -jxvf libgdiplus-2.10.tar.bz2

cd libgdiplus-2.10

./configure --prefix=/usr

make

make install

四、安裝 mono

cd /usr/local/src/

wget http://download.mono-project.com/sources/mono/mono-2.10.8.tar.bz2

tar -jxvf mono-2.10.8.tar.bz2

cd mono-2.10.8

./configure --prefix=/usr

make

make install

輸入 mono -V 如有mono版本信息,則安裝成功.

如果是64位版本的CentOS,在后續安裝好Jexus 5,啟動的時候會發生以下錯誤:

Sender: jws.exe, Sender TypeName: AppDomain
Exception Source: jws, TargetSite Name: A
Message is:
An exception was thrown by the type initializer for Mono.Unix.Native.Stdlib
StackTrace is:
  at A.G.A (System.String[] A) [0x00000] in <filename unknown>:0 
IsTerminating: True

建議你運行下命令ldconfig,建議大家在安裝mono后,都 ldconfig一下 。(ldconfig命令的用途,主要是在默認搜尋目錄(/lib和/usr/lib)以及動態庫配置文件/etc/ld.so.conf內所列的目錄下,搜索出可共享的動態鏈接庫(格式如前介紹,lib*.so*),進而創建出動態裝入程序(ld.so)所需的連接和緩存文件.緩存文件默認為/etc/ld.so.cache,此文件保存已排好序的動態鏈接庫名字列表. )

另外有一點也非常重要,要在編譯Mono的是指定安裝到/usr(./configure --prefix=/usr),如果安裝到一個系統根本"不了解"的文件夾,僅ldconfig都不行,還要在/etc/ld.so.conf文件或/etc/ld.so.conf.d 中添加路徑后再 ldconfig才行呢。

 

ldconfig幾個需要注意的地方!

 

1. 往/lib和/usr/lib里面加東西,是不用修改/etc/ld.so.conf的,但是完了之后要調一下ldconfig,不然這個library會找不到

 

2. 想往上面兩個目錄以外加東西的時候,一定要修改/etc/ld.so.conf,然后再調用ldconfig,不然也會找不到

 

比 如安裝了一個mysql到/usr/local/mysql,mysql有一大堆library在/usr/local/mysql/lib下面,這時就 需要在/etc/ld.so.conf下面加一行/usr/local/mysql/lib,保存過后ldconfig一下,新的library才能在程 序運行時被找到。

 

3. 如果想在這兩個目錄以外放lib,但是又不想在/etc/ld.so.conf中加東西(或者是沒有權限加東西)。那也可以,就是export一個全局變 量LD_LIBRARY_PATH,然后運行程序的時候就會去這個目錄中找library。一般來講這只是一種臨時的解決方案,在沒有權限或臨時需要的時 候使用。

 

4. ldconfig做的這些東西都與運行程序時有關,跟編譯時一點關系都沒有。編譯的時候還是該加-L就得加,不要混淆了。

 

5. 總之,就是不管做了什么關於library的變動后,最好都ldconfig一下,不然會出現一些意想不到的結果。不會花太多的時間,但是會省很多的事

 

五、安裝Jexus 5.0

1、下載:
下載地址是:http://www.linuxdot.net/down/jexus-5.0.1.tar.gz

wget http://www.linuxdot.net/down/jexus-5.0.1.tar.gz

2、解壓:
tar -zxvf jexus-5.0.tar.gz

3、安裝:
   Jexus安裝非常簡單,僅僅就是一個復制、粘帖和注冊全局程序集的過程
   注意:以下所有操作請用root身份。

A、升級安裝:

   1) 轉到原安裝jws的文件夾,如:cd /usr/jexus/
   2) 停止舊版jexus的運行:
      sudo /usr/jexus/  jws.stop
   2) 刪除舊版:
      sudo rm *.exe
      sudo rm *.dll
   3) 將解壓文件夾中的下列文件復制到原來安裝jexus的文件夾:
      jws.exe
      jwsHttpd.exe
      jxAspx.dll
      jxHost.dll
      jws.regsvr
      jws.start
      jws.restart
      jws.stop
   4) 將 jws.regsvr、jws.start、jws.restart、jws.stop 設為可執行
   5) 注冊全局程序集(*非常重要*)
      進入安裝jexus目標文件夾,然后運行:
      sudo ./jws.regsvr

B、全新安裝:
   1) 建立jexus安裝文件夾(一般為/etc/jws/),我安裝到/usr/jexus/ :
      sudo mkdir /usr/jexus/

   2) 把解壓所得到的文件及文件夾全部復制或移動到 /etc/jws 這個文件夾中
      如: sudo mv * /usr/jexus/

   3) 將 jws.regsvr、jws.start、jws.restart、jws.stop 設為可執行
   4) 注冊全局程序集(*非常重要*)
      進入安裝jexus目標文件夾(cd /usr/jexus/),然后運行:
      sudo ./jws.regsvr

六、運行測試
    復制完Jexus的文件后,Jexus就可以正常工作了。
    所以,如果你的系統只要mono已經成功安裝,jexus就可以直接使用,甚至連進一步的配置也完全不需要。

    如果是升級安裝,你只需要用jws.start啟動JWS,Jexus就可以正常工作了,如果不能正常工作,常常是新版本的配置方式可能有變,你可以查查jws.conf等配置文件。

    強調:如果你服務器安裝有其它的WEB服務器,而且該服務正在運行,請停止它,以免造成端口沖突而造成Jexus無法啟動。

    如果是全新安裝,請首先建立一個默認的網站文件夾:/var/www/default
    然后在Jexus工作文件夾(/usr/jexus/)中執行jws.start命令(需要root身份),啟動jexus。
    1、用cat log/jws.log,看看jws日志文件有沒有什么出錯的提示。
    2、如果沒有錯誤提示,請訪問一下這台服務器,看看是否有jexus的歡迎頁,比如訪問 http://服務器IP地址/info:

image  
    3、如果看到歡迎頁了,你可以在/var/www/default/文件夾中放入網站內容或一個簡單的首頁文件,再次訪問者,你就可以看到你自己的網站內容了。

七、配置,具體參考Jexus 自帶Readme文件

 

讓jexus能夠讀取中文亂碼文件名 1、安裝GBK等字符集: 步驟一:修改:/var/lib/locales/supported.d/local文件,添加一行,內容是“zh_CN GBK”。(當然,還可以加上“zh_CN GB18030”等); 步驟二:運行命令  sudo locale-gen 2、在jws.start和jws.restart兩個文件中,添加一個環境變量:“export  ONO_EXTERNAL_ENCODINGS="gbk:gb18030"”
注:以上方法適用於jexus 5.2

參考:

 伺服器安裝第一首選 CentOS 6帶來寧靜革命

 推薦一個在Linux/Unix上架設ASP.NET的 WEB服務器—Jexus

 安裝mono、Jexus的要點

 安裝Mono 2.10 CentOS的使用yum

 Deploying to Mono

 Developing and Deploying ASP.NET MVC Applications On Ubuntu Linux with Mono, nginx and MySQL

 Centos 6.x編譯安裝mono搭建 ASP.NET Mvc3環境  

 在Debian上安裝LNMP+Mono運行asp.net程序

CentOS 6.2+Mono 2.10.8+jexus 5.0.2+asp.net mvc3 安裝部署備忘


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM