【轉】windows下nginx+mono+fastCGI部署asp.net網站

來源:互聯網
上載者:User

標籤:

原文連結:http://www.cnblogs.com/amityat/archive/2011/08/23/2150153.html

1,什麼是nginx

簡介
Nginx ("engine x") 是一個高效能的 HTTP 和 反向 Proxy 伺服器,也是一個 IMAP/POP3/SMTP Proxy 伺服器。 Nginx 是由 Igor Sysoev 為俄羅斯訪問量第二的 Rambler.ru 網站開發的,它已經在該網站運行超過兩年半了。Igor 將原始碼以類BSD許可證的形式發布。儘管還是測試版,但是,Nginx 已經因為它的穩定性、豐富的功能集、樣本設定檔和低系統資源的消耗而聞名了。更多的請見官方wiki:http://wiki.codemongers.com/NginxChs

Nginx的優點
nginx做為HTTP伺服器,有以下幾項基本特性: 

  • 處理靜態檔案,索引檔案以及自動索引; 
    反向 Proxy加速(無緩衝),簡單的負載平衡和容錯; 
    FastCGI,簡單的負載平衡和容錯; 
    模組化的結構。過濾器包括gzipping, byte ranges, chunked responses, 以及 SSI-filter 。在SSI過濾器中,到同一個 proxy 或者 FastCGI 的多個子請求並發處理; 
    SSL 和 TLS SNI 支援;

簡單的就這些 ..舉得大家去Google吧

2,什麼是fastCGI

簡介:

FastCGI同CGI一樣是一個WEB伺服器與外部程式介面的標準,它是為解決CGI的效能問題而開發的一種技術。

fastCGI對CGI技術進行了改良,一個fastCGI進程在WEB伺服器啟動時或在用戶端第一次請求時建立,它處理完用戶端請求後並不終止, 而是等待處理下一個請求。另外fastCGI程式與CGI程式與伺服器的互動方式也不同,CGI程式通過環境變數、命令列、標準輸入輸出進行互動,因此 CGI程式進程必須與伺服器處理序在同一台實體電腦上,而fastCGI程式與伺服器處理序通過網路連接互動,因此fastCGI程式可以分布在不同的計算 機上,這不但可以提高效能,同時也提高了系統的擴充能力。

3,什麼是Mono

Mono是一個集體的, 自發的開發項目, 旨在開發一個開放原始碼的, Linux版的Microsfot.NET 開發平台. 作為一個有機的.NET整體, 它包括一個C#編譯器, 一個公用語言運行時環境, 以及相關的一整套類庫. Mono項目將使開發人員開發的.NET應用程式不僅能能在windows平台上運行, 也能在任何支援Mono的平台上運行, 包括Linux, Unix. Mono項目將使大家能開發出各種跨平台的應用程式, 並能極大提高開源領域的開發效率.

這裡只做簡單介紹,具體的去Google吧..

以上內同均來自網路..

進入主題...

windows下部署nginx+mono+fastCGI部署asp.net網站

下載Nginx:到下載Nginx對應的版本

下載Mono對應平台:下載 Mono..

1,在vs中建立一個asp.net 網站 .就叫nginxSite吧.

2,我下載的是nginx-0.8.54..nginx-0.9.4的在我的 win7上跑不起來..

   解壓之後開啟conf檔案夾下的nginx.conf檔案.

   配置主要的幾個節點即可:

http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  ‘$remote_addr - $remote_user [$time_local] "$request" ‘
    #                  ‘$status $body_bytes_sent "$http_referer" ‘
    #                  ‘"$http_user_agent" "$http_x_forwarded_for"‘;

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

       location / {
            root  nginxSite;
            #index  index.html index.htm;

            fastcgi_pass  127.0.0.1:8000;
            fastcgi_param  SCRIPT_FILENAME  $document_root/$fastcgi_script_name; 
            include fastcgi_params;
        }

        error_page   500 502 503 504  /50x.html;
            location = /50x.html {
            root   html;
        }
    
         location ~ .*\.aspx$ {
            root       nginxSite;
            fastcgi_pass   127.0.0.1:8000;     
            #fastcgi_index  Default.aspx;   
            fastcgi_param  SCRIPT_FILENAME  $document_root/$fastcgi_script_name; 
            include        fastcgi_params;   
        }
     # 靜態資源
    location ~ ^/css/ {
    root   C:\nginx\Mono_MVC3;
    expires 4d;
    }

     #設定查看Nginx狀態的地址
    location /NginxStatus {
        stub_status on;
        access_log on;
        auth_basic “NginxStatus”;
        auth_basic_user_file conf/htpasswd;
    }

    }

3,配置之後,在命令列下進入D:\Program Files\Mono-2.10\bin>

   輸入fastcgi-mono-server4 /socket=tcp:127.0.0.1:8000 /root="C:\nginx\nginxSite" /applications=/:. /multiplex=True /port=8080

   C:\nginx\nginxSite是Nginx下網站的根目錄.

   啟動服務..

4,在nginx雙擊nginx.exe 既可以在後台啟動服務.

5,在瀏覽器輸入http://127.0.0.1 就可以瀏覽網站了

【轉】windows下nginx+mono+fastCGI部署asp.net網站

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.