標籤:
原文連結: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網站