天天看點

測試asp.net for Linux的環境搭建

jexus,版本不相同,方法也不相同)

下載下傳位址:http://origin-download.mono-project.com/sources/libgdiplus/

下載下傳位址:http://origin-download.mono-project.com/sources/mono/

下載下傳位址:http://www.jexus.org/

(1)、更新系統yum update

(2)、通過yum安裝編譯mono所需要的庫

(3)、編譯安裝Libgdiplus

這一步的作用其實到了部署mono時,執行ldconfig才正式的發揮作用。由于我們部署libgdiplus和mono沒有部署到系統預設的/usr中,是以系統是不會預設的到我們部署mono的檔案夾中搜尋和讀取裡面的動态庫檔案,這時,我們需要在/etc/ld.so.conf.d/檔案夾中,手動的添加mono動态庫檔案夾的位址,再執行ldconfig來讓系統能夠找到我們的動态庫檔案

(4)、安裝mono

由于mono比較大,是以解壓和編譯安裝都需要比較長的時間

編譯部署mono之後,我們會得到大量需要加載的動态庫檔案,而這些動态庫檔案,我們再下一步的時候就需要用到,是以需要讓系統重新加載。(如果沒有重新加載,有可能在部署jexus的時候會出現各種各樣的問題)

echoPATH=/usr/local/mono/bin:$PATH>>~/.bash_profile

source~/.bash_profile

部署mono之後,需要把bin目錄的路徑加入到環境變量PATH中

原理跟安裝完jdk之後,需要在環境變量注冊是一樣的。

執行“ mono-V ”如果可以看到mono的版本資訊,則表明編譯安裝成功

(5)、安裝jexus

至此,jexus就安裝完畢了

網站配置 (以下轉自www.jexus.org)

Jexus支援多站點,可以用不同的端口、域名、虛拟路徑設定任意多的網站,配置時,首先要注意如下三個規則:

1)必須把所有網站配置檔案放到jws.conf指定的網站配置檔案夾内,這個檔案夾除了網站配置檔案,不能有其它任何檔案,因為jexus會認為這兒的任何一個檔案都代表着一個不同的網站。

2)每個網站有且隻有一個配置檔案,配置檔案的檔案名就是這個網站的名稱,比如www.mysite.cn這個網站,配置檔案名可以寫成“mysite”,當然也可以寫成其它檔案名,以便管理者容易記憶和識别,但要特别注意:檔案名不能有空格!

3)一個網站可以擁有任意多的域名,不同網站不能有相同的域名,沒有域名的網站隻能有一個,這個沒有域名的網站叫做“預設網站”,而一台伺服器最多隻能有一個預設網站。

下面以www.mysite.cn為例,說說網站的配置

在網站配置檔案夾中建立一個檔案,這個檔案的名稱應該有一些意義(至少要能讓伺服器管理者了解這個配置檔案是屬于哪一個網站的)

設這個網站的配置檔案的檔案名為:mysite

sudomiv 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系統含有常用首頁名)

aspnet_exts=mspx,ttt# 添加新出現的或自定義的ASP.NET擴充名(不建議填。多個擴充名用英文逗号分開,不加點号。系統含有常用擴充名)

B、最簡配置示例

port=80

root=//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、禁止某IP或IP段通路本網站

denyfrom=111.222.111.*

denyfrom=101.202.111.*

denyfrom=101.201.1.132

3、禁止通路某檔案夾及其子檔案夾中的内容

DenyDirs=網站檔案夾路徑的URL路徑,如“/abcfiles”或“~/abcfiles”,多個路徑,用英文逗号分開

4、是否對請求的URL等進行安全檢測

本選項預設是true,即需要檢查,除非你的确需要關掉這個選項,否則可以不填,格式如下:

checkquery=false

(關掉本項可以提高伺服器速度,但就安全而言,不建議關掉它)

5、NOFILE(無檔案)功能

nofile=/mvc/controller.aspx

(注:這是Jexus特有的功能,指的是如果伺服器不存在使用者要通路的檔案,伺服器将使用什麼檔案應答。)

(提示:路由後,原RUL路徑會存貯在Jexus特有一個伺服器變量“X-Real-Uri”中)

(技巧:用這個功能,或者再加上URLRewrite功能,你完全可以把URL路徑與真實路徑隔離開來,達到資訊隐藏和簡化URL的作用。)

6、NOLOG(無日志)功能

nolog=yes

(注:禁用網站日志功能會提高WEB伺服器系統的的處理速度,但不足也是明顯的,就是你無法詳細了解網站的通路情況了)

7、長連接配接開關

keep_alive=true

注:V5.1版預設值是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就會随機選擇一台伺服器進行通路,達到負載均衡或伺服器叢集的效果。

9、接受FAST-CGI提供的服務

對于TCP連接配接:

fastcgi.add=需要fast-cgi處理的檔案擴充名|tcp:fast-cgi服務的IP位址:端口

如:fastcgi.add=php,php3|tcp:127.0.0.1:9000

對于unixsockets:

fastcgi.add=需要fcgi處理的檔案擴充名|socket:路徑

如:fastcgi.add=php,php3|socket:/tmp/phpsvr

10、啟用gzip壓縮功能

usegzip=true#即UseGzip

解釋:啟用這個功能後,當使用者通路“.htm”“.js”等檔案時,Jexus會将這些檔案進行GZIP壓縮後發送給使用者浏覽器,這樣,可以節約更多的網絡帶寬。

11、啟用HTTPS進行SSL安全傳輸

本功能是對伺服器與客戶之間的資料進行加密傳送,提供資料的保密性。具體方法請通路www.linuxdot.net的專題講解。

本文轉自 lcpljc 51CTO部落格,原文連結:http://blog.51cto.com/lcpljc/1306332,如需轉載請自行聯系原作者