Windows安裝nginx1.10.1反向代理訪問IIS網(wǎng)站
首先去官網(wǎng)下載軟件包,解壓,路徑最好不要有中文
Nginx配置的路徑問題
由于在Windows下文件路徑可以用”\”, 也可以用”\\”, 也可以用”/”作為路徑做分隔符。但”\”最容易引發(fā)問題,所以要盡量避免使用。
不要添加PATH,否則會引發(fā)錯誤,config文件路徑找不到
比如我解壓在E盤
cmd命令定位到nginx.exe所在文件夾cd E:\WorkSoftWare\nginx-1.10.1
然后執(zhí)行,首先保證nginx.conf文件配置沒問題
其實nginx最重要的和最主要的工作就是配置文件,其他沒什么需要我們應(yīng)用開發(fā)人員關(guān)注的,除非想修改底層源碼.
nginx.conf配置如下:
#user nobody;
worker_processes 1;
#工作進程的個數(shù),可以配置多個
#全局錯誤日志及PID文件
error_log /WorkSoftWare/nginx-1.10.1/logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
pid /WorkSoftWare/nginx-1.10.1/logs/nginx.pid;
events {
worker_connections 1024; #單個進程最大連接數(shù)(最大連接數(shù)=連接數(shù)*進程數(shù))
}
#設(shè)定http服務(wù)器,利用它的反向代理功能提供負(fù)載均衡支持
http {
include mime.types; #設(shè)定配置文件位置,這里的conf是指nginx.conf所在的目錄,也可以用絕對路徑指定其他地方的配置文件
default_type application/octet-stream; #默認(rèn)類型-8進制文件流
#設(shè)定日志格式
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#設(shè)定訪問日志
#access_log /WorkSoftWare/nginx-1.10.1/logs/access.log main;
sendfile on; #是否激活sendfile()函數(shù),比默認(rèn)模式更有效率
#tcp_nopush on; #將HTTP響應(yīng)頭壓縮到一個包中發(fā)送,僅在sendfile開啟時才能配合使用
#連接超時時間
#keepalive_timeout 0;
keepalive_timeout 65;
gzip on; #啟用Gzip壓縮
#服務(wù)器的集群
#設(shè)定負(fù)載均衡的服務(wù)器列表 支持多組的負(fù)載均衡,可以配置多個upstream 來服務(wù)于不同的Server.
#nginx 的 upstream 支持 幾 種方式的分配
#1)、輪詢(默認(rèn)) 每個請求按時間順序逐一分配到不同的后端服務(wù)器,如果后端服務(wù)器down掉,能自動剔除。
#2)、weight 指定輪詢幾率,weight和訪問比率成正比,用于后端服務(wù)器性能不均的情況。 跟上面樣,指定了權(quán)重。
#3)、ip_hash 每個請求按訪問ip的hash結(jié)果分配,這樣每個訪客固定訪問一個后端服務(wù)器,可以解決session的問題。
#4)、fair
#5)、url_hash #Urlhash
#upstream imicrosoft.net
#{
#服務(wù)器集群名字
#服務(wù)器配置 weight是權(quán)重的意思,權(quán)重越大,分配的概率越大。
#server 192.98.12.60:1985 weight=3 max_fails=2 fail_timeout=30s;
#server 192.98.12.42:8086 weight=3 max_fails=2 fail_timeout=30s;
#weigth參數(shù)表示權(quán)值,權(quán)值越高被分配到的幾率越大
#1.down 表示單前的server暫時不參與負(fù)載
#2.weight 默認(rèn)為1.weight越大,負(fù)載的權(quán)重就越大。
#3.backup: 其它所有的非backup機器down或者忙的時候,請求backup機器。所以這臺機器壓力會最輕。
#本例是指在同一臺服務(wù)器,多臺服務(wù)器改變ip即可
# server 127.0.0.1:8055 weight=4 down;
# server 127.0.0.1:8010 weight=5 backup;
#}
upstream localhost
{
server 127.0.0.1:9000 weight=3 max_fails=2 fail_timeout=200s;
server 127.0.0.1:8086 weight=5 max_fails=2 fail_timeout=200s;
}
#當(dāng)前的Nginx的配置,代理服務(wù)器的地址,即Nginx安裝的服務(wù)器地址、監(jiān)聽端口、默認(rèn)地址,
#設(shè)定虛擬主機,默認(rèn)為監(jiān)聽80端口
server
{
listen 9090; #偵聽9090端口
#對于server_name,如果需要將多個域名的請求進行反向代理,可以配置多個server_name來滿足要求
server_name localhost; #當(dāng)前服務(wù)的域名
charset utf8;
#charset koi8-r;
#設(shè)定本虛擬主機的訪問日志
#access_log logs/host.access.log main;
#如果訪問 /images/*, /js/*, /css/* 資源,則直接取本地文件,不用轉(zhuǎn)發(fā)。
#但如果文件較多效果不是太好。
#location ~ .*\.(jpg|jpeg|gif|css|png|ico|html)$
#{
# expires 30d;
# root /nginx-1.10.1;#root:
# break;
#}
#對 "/" 啟用負(fù)載均衡
location / {
root html; #默認(rèn)主頁目錄在nginx安裝目錄的html子目錄
index index.html index.htm index.aspx; #沒有索引頁時,羅列文件和子目錄
#proxy_pass http://www.imicrosoft.net; #跟載均衡服務(wù)器的upstream對應(yīng)
autoindex on; #沒有索引頁時,羅列文件和子目錄
#保留用戶真實信息
proxy_redirect off; #url不跳轉(zhuǎn)
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#緩沖區(qū)代理緩沖用戶端請求的最大字節(jié)數(shù),可以理解為先保存到本地再傳給用戶
# client_body_buffer_size 128k;
# #跟后端服務(wù)器連接超時時間 發(fā)起握手等候響應(yīng)超時時間
# proxy_connect_timeout 12;
# #連接成功后 等待后端服務(wù)器響應(yīng)時間 其實已進入后端的排隊之中等候處理
# proxy_read_timeout 90;
# #代理請求緩存區(qū) 這個緩存區(qū)間會保存用戶的頭信息一共Nginx進行規(guī)則處理 一般只要能保存下頭信息即可
# proxy_send_timeout 90;
# #同上 告訴Nginx保存單個用的幾個Buffer最大用多大空間
# proxy_buffer_size 4k;
# proxy_buffers 4 32k;
# #如果系統(tǒng)很忙的時候可以申請國內(nèi)各大的proxy_buffers 官方推薦 *2
# proxy_busy_buffers_size 64k;
# #proxy 緩存臨時文件的大小
proxy_temp_file_write_size 64k;
# proxy_next_upstream error timeout invalid_header http_500 http_503 http_404;
proxy_max_temp_file_size 128m;
#啟動代理
proxy_pass http://localhost;
client_max_body_size 10m; #允許客戶端請求的最大單個文件字節(jié)數(shù)
}
#示例一
#location / {
# proxy_pass http://imicrosoft.net;
#
# proxy_redirect default;
#
# proxy_set_header Host $host;
# proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#}
#示例二
#location /tileservice {
# proxy_pass http://cluster/MongoTileService/tileService;
# proxy_set_header Host $host;
# proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#對 "/XXXXX.PHP" 啟用負(fù)載均衡
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}
#location /baidu
#{
#proxy_pass http://www.google.com;
#proxy_set_header Host $host;
#proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
#}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
# another virtual host using mix of IP-, name-, and port-based configuration
#
#server {
# listen 8000;
# listen somename:8080;
# server_name somename alias another.alias;
# location / {
# root html;
# index index.html index.htm;
# }
#}
# HTTPS server
#
#server {
# listen 443 ssl;
# server_name localhost;
# ssl_certificate cert.pem;
# ssl_certificate_key cert.key;
# ssl_session_cache shared:SSL:1m;
# ssl_session_timeout 5m;
# ssl_ciphers HIGH:!aNULL:!MD5;
# ssl_prefer_server_ciphers on;
# location / {
# root html;
# index index.html index.htm;
# }
#}
}
結(jié)果如圖:



IIS站點

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
詳解nginx同一端口監(jiān)聽多個域名和同時監(jiān)聽http與https
這篇文章主要介紹了詳解nginx同一端口監(jiān)聽多個域名和同時監(jiān)聽http與https的相關(guān)資料,需要的朋友可以參考下2017-05-05
利用nginx實現(xiàn)動靜分離的負(fù)載均衡集群實戰(zhàn)教程
這篇文章介紹了利用nginx實現(xiàn)動靜分離的負(fù)載均衡集群實戰(zhàn),本次用到的操作系統(tǒng)及服務(wù),本次實驗一共需要3臺服務(wù)器,一臺nginx做為負(fù)載均衡分發(fā)器和動靜分離的分發(fā)器,兩臺apache做為后端服務(wù)器,使用nginx實現(xiàn)兩臺apache服務(wù)器的負(fù)載均衡和動靜分離,需要的朋友可以參考下2023-03-03
nginx服務(wù)器異常502 bad gateway原因排查
這篇文章主要介紹了nginx服務(wù)器異常502 bad gateway原因排查,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下2021-08-08
Nginx服務(wù)器中HTTP 301跳轉(zhuǎn)到帶www的域名的方法
這篇文章主要介紹了Nginx服務(wù)器中HTTP 301跳轉(zhuǎn)到帶www的域名的方法,包括從HTTPS 301提示跳轉(zhuǎn)等rewrite相關(guān)的方法,需要的朋友可以參考下2015-07-07

