日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

Mono 之 Nginx

 命運(yùn)之輪 2013-11-25

   在Linux上部署網(wǎng)站需要先安裝Web服務(wù)器端軟件,IIS只能在windows上使用,相對(duì)的我們可以選擇著名的apache、Ngnix等。本文將簡(jiǎn)單Nginx的安裝、配置以及利用其運(yùn)行一個(gè)簡(jiǎn)單的Asp.net 網(wǎng)站。


Nginx


    Nginx (Engine X)是一個(gè)高性能的Web服務(wù)器,由于其穩(wěn)定、功能豐富、低資源消耗等特點(diǎn),已經(jīng)有很多網(wǎng)站利用它進(jìn)行部署(國(guó)內(nèi)不少大公司開始利用nginx 取代 apache,畢竟LAMP 太教條化了)。


Nginx安裝


  本文將從源碼開始安裝nginx 目前最新版為 1.2.0,所有的安裝過(guò)程都是在Ubuntu操作系統(tǒng)下進(jìn)行的。


首先下載源碼:



 wget http:///download/nginx-1.2.0.tar.gz



然后解壓



tar -zxv -f nginx-1.2.0.tar.gz


進(jìn)入解壓的目錄后接著執(zhí)行



./configure



碰到了 PCRE Library 沒有安裝的問(wèn)題


利用  apt-get install libpcre3 libpcre3-dev 命令安裝PCRE庫(kù)


再次運(yùn)行./configure  發(fā)現(xiàn)缺乏Http gzip模塊



執(zhí)行 :apt-get install libssl-dev 安裝對(duì)應(yīng)的模塊。


再次運(yùn)行./configure 



 


接著依次運(yùn)行



make

make install


這樣就完成了Nginx的安裝,默認(rèn)安裝在/usr/local/nginx下。


使用以下命令啟動(dòng)Nginx



/usr/local/nginx/sbin/nginx


 


測(cè)試Nginx 


Nginx默認(rèn)以Deamon進(jìn)程啟動(dòng),輸入下列命令測(cè)試是否啟動(dòng)成功:



curl -i http://localhost/


成功安裝后會(huì)得到以下結(jié)果:



如果出現(xiàn)以上信息,恭喜你Nginx 安裝成功。


如果想停止運(yùn)行Nginx可以利用以下命令:



/usr/local/nginx/sbin/nginx -s stop


配置Nginx


    nginx的配置文件是純文本文件,主配置文件默認(rèn)放在安裝目錄下的conf文件夾中。conf下有很多的配置文件,其中nginx.conf為主配置文件。整個(gè)配置文件以block的形式組織,每一個(gè)"{}"及其內(nèi)容就代表一個(gè)block.block可以分為幾個(gè)層次,整個(gè)配置文件中main指令位于最高層,在main層下面可以有Events、HTTP等層級(jí),而在HTTP層中又包含有server層,即server block,server block中又可分為location層,并且一個(gè)server block中可以包含多個(gè)location block.



 


 打開配置文件在 Http 配置塊內(nèi)添加:



include /usr/local/nginx/conf/monotest.conf;


說(shuō)明:這里利用 include 命令 將虛擬主機(jī)Server 節(jié)的配置移動(dòng)到單獨(dú)的文件中方便管理,空格后面緊跟的是文件路徑。(不要忘記分號(hào)“;”).


Monotest .conf 的配置如下:


復(fù)制代碼

server{
    listen 8001;
    server_name localhost;

    location   / {
    root /home/ubuntu/www/monotest/;
    index default.aspx Default.aspx;
    fastcgi_index Default.aspx;
    fastcgi_pass 127.0.0.1:9001;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include /usr/local/nginx/conf/fastcgi_params;
                    }

}

復(fù)制代碼

server 表示我們配置的虛擬主機(jī),listen 指定服務(wù)監(jiān)聽的端口(通常為80 ),這里我們指定為8001;server_name用來(lái)指定IP地址或者域名,多個(gè)域名之間用空格分開;


location 可以用于匹配URL,其語(yǔ)法為location [=|~|~*|^~] /uri/ { … }



  • location  / { 匹配任何查詢,因?yàn)樗姓?qǐng)求都以 / 開頭。但是正則表達(dá)式規(guī)則將被優(yōu)先和查詢匹配。

  • location =/ {} 僅僅匹配/

  • location ~* \.(gif|jpg|jpeg)$ {} 不區(qū)分大小寫匹配任何以gif,jpg,jpeg結(jié)尾的文件


root 表示站點(diǎn)的路徑;index  表示配置的默認(rèn)頁(yè)。


fastcgi_pass  ,表示FastCgi服務(wù)啟動(dòng)時(shí)所采用的地址


  Nginx并不直接支持外部程序到調(diào)用或解析(IIS 則可以直接調(diào)用IASPI進(jìn)行擴(kuò)展),需要通過(guò)FastCGI接口來(lái)調(diào)用。在Linux下FastCGI利用的是Socket,所以我們需要指定地址和綁定端口。


啟動(dòng)站點(diǎn)


  啟動(dòng)站點(diǎn)需要分別啟動(dòng)nginx 和 fastcgi服務(wù)。


首先啟動(dòng)nginx 輸入文章開始的 /usr/local/nginx/sbin/nginx 命令如果沒有其他提示表示運(yùn)行成功(Linux的哲學(xué)?。。?,接著啟動(dòng)fastCgi 



su nohup fastcgi-mono-server4 /applications=/:/home/ubuntu/www/monotest/    /socket=tcp:127.0.0.1:9001 &


nohup ....  &  表示讓程序在后臺(tái)運(yùn)行。


fastcgi-mono-server4  針對(duì)的是 mono/.net 4.0   fastcgi-mono-server2 命令針對(duì)的是 mono/.net2.0 版本。


/application 參數(shù)用于指定虛擬路徑和物理路徑見的映射,"/: " 表示映射到根路徑,可參考:http://www./FastCGI


/socket 指定地址和端口。


命令成功運(yùn)行后會(huì)提示:


nohup: 忽略輸入并把輸出追加到"nohup.out"


新建簡(jiǎn)單網(wǎng)站


    打開Monodevelop新建一個(gè)簡(jiǎn)單的asp.net 網(wǎng)站,在項(xiàng)目模板張選擇“C#”-》“ASP.NET”-》“Web application”。


將項(xiàng)目名稱命名為“monotest”.


   網(wǎng)站只是用于測(cè)試nginx的配置,無(wú)需做太多的設(shè)計(jì),使用項(xiàng)目模板的默認(rèn)生成即可。


  右擊項(xiàng)目,選擇命令“工具”-》“Deloy to web”:



 點(diǎn)擊“Edit targets” 按鈕,然后在彈出的“工程選項(xiàng)”窗口左欄 找到 “部署”-》“Web deloyment target”



 


 點(diǎn)擊 “Add” 在彈出的窗口中填寫好要保存的目標(biāo)路徑即可。最后將發(fā)布好的網(wǎng)站拷貝到上面server虛擬主機(jī)配置中指定的 路徑中。


運(yùn)行效果



 



 


后記:經(jīng)過(guò)一番折騰總算是成功運(yùn)行,目前還不知道性能如何,文章中只是點(diǎn)到了一部分和Mono相關(guān)的內(nèi)容,Nginx、FastCGi 的很多配置也沒有說(shuō)明。


nginx依賴的庫(kù)


1. gzip module requires zlib library 
2. rewrite module requires pcre library 
3. ssl support requires openssl library


 


參考鏈接


http://wiki./Chs


http://kb.cnblogs.com/page/98352/


http://www.cnblogs.com/xiaogangqq123/archive/2011/03/02/1969006.html


http://blog.sina.com.cn/s/articlelist_1834459124_0_1.html


http://book.51cto.com/art/201202/314644.htm

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多