Nginx配置端口轉發(windows系統)


網上有許多nginx端口轉發配置方式都是錯的,或者不適合1.14.0以后版本的,或者是不適用於windows版nginx,至於是哪個原因,本人並未深究;

以下是本人配置windows版nginx端口轉發的配置與驗證結果,隨筆記錄,以作參考;

下載nginx-1.15.8后解壓,得到nginx-1.15.8文件夾

一,修改E:\nginx-1.15.8\conf\nginx.conf配置文件

在nginx.conf配置文件的http節點添加以下配置,

http {

  #gzip on;

  #添加upstream映射9080端口
  upstream api{

       server 127.0.0.1:9080;
  }

  #添加upstream映射8080端口

  upstream tomcat{

    server 127.0.0.1:8080;
  }

  server {
    listen 80;
    server_name localhost;

    #添加location匹配路由規則:/api

    location /api {

      #代理使用上面upstream定義名稱為api的端口映射方式;

      #注意:最后一定要加斜桿,否則不能訪問到啟動在該端口項目,只能轉發到端口,但端口后的路由匹配均不生效;

      #錯誤格式proxy_pass http://api;

      #正確格式proxy_pass http://api/;
      proxy_pass http://api/;
    }

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

      #一般非特殊請求,轉發到tomcat所在的端口

      #代理配置格式參考api,配置結果如下
      proxy_pass http://tomcat/;
    }

  }

}

我就是在proxy_pass配置沒有加/結束,所以轉發到端口后nginx限制繼續訪問該端口下項目的其他路由,找了好久沒找對是該原因

二,驗證配置端口映射結果

啟動一個springboot項目,端口使用9080

 

啟動tomcat端口使用8080

不使用端口訪問,均可以訪問到對應的頁面,既是nginx配置端口轉發成功!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM