nginx配置反向代理實例教程(windows版)


  Nginx是一款輕量級Web 服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器,並在一個BSD-like 協議下發行。其特點是占有內存少,並發能力強。

下面就詳細的說一說如何用Nginx實現反向代理。

首先:來做點准備工作,最少兩個tomcat,另外設置兩個域名並解析到本地ip(因為nginx是直接配置域名)

(1)准備兩個tomcat

分別設置兩個tomcat的/conf/server.xml中的端口號,如下

tomcat1端口號分別設置為:8205    8280   8209

tomcat2端口號分別設置為:8215    8281   8219

 

(2)添加測試內容

分別刪除目錄webapps下所有文件,新建一個文件夾ROOT,並在該目錄下新建index.html

內容可以設置為:這里是8280端口。(另一個:這里是8281端口。)

 

(3)啟動兩個tomcat

 

(4)分別訪問兩個tomcat下的項目

訪問下面兩個網址:

127.0.0.1/8280

127.0.0.1/8281

如果能夠訪問到對應的index.html文件就說明tomcat配置且啟動成功。

 

(5)設置兩個域名並做解析

修改hosts文件,目的是為了設置2個域名, tomcat1.com和 tomcat2.com並且解析到本地ip:127.0.0.1

路徑:C:\Windows\System32\drivers\etc

打開hosts文件,加上(如果修改后無法保存,可以把hosts文件復制到桌面,修改完成后再替換原有hosts文件)

添加內容如下:

127.0.0.1 tomcat1.com
127.0.0.1 tomcat2.com

 

(6)測試域名是否解析成功

127.0.0.1/8280;127.0.0.1/8281分別修改為

tomcat1.com:8280;tomcat2.com:8281

 

如果顯示結果如上圖所示,說明域名設置並解析成功。

 

下面開始正式配置Nginx服務器的方向代理。

 

1. 下載、安裝Nginx服務器

 

輸入網址:http://nginx.org/en/download.html ,選個合適的版本,下載后解壓到合適的路徑。

解壓后,如圖所示:nginx.exe可以直接運行,但是不建議。

2. 配置反向代理

 

打開/conf/nainx.conf文件,刪除server{ …… },或者注銷掉

重新添加server{  }

listen:監聽的端口號

server_name: 訪問域名

location :這里配置為/   直接匹配端口下的默認ROOT下的項目,location內容很廣泛,

參見:https://segmentfault.com/a/1190000009651161

proxy_pass  :為項目的實際訪問地址

server {
        listen       80; 
        server_name  tomcat1.com;
        #charset koi8-r;
        #access_log  logs/host.access.log  main;
        location  / {
        proxy_pass   http://127.0.0.1:8280;
        index  index.html index.htm;
        }
    }
server {
        listen       80;
        server_name  tomcat2.com;
        #charset koi8-r;
        #access_log  logs/host.access.log  main;
        location / {
        proxy_pass   http://127.0.0.1:8281;
        index  index.html index.htm;
        }
    }

 

3.啟動、關閉、重啟Nginx服務器

 

打開cmd.exe運行命令。

注意:一定要在nginx.exe文件所在的文件夾下操作。

(1)啟動:

H:\nginx-1.12.2>start nginx

或H:\nginx-1.12.2>nginx.exe

注:建議使用第一種,第二種會使你的cmd窗口一直處於執行中,不能進行其他命令操作。

 

(2)停止:

H:\nginx-1.12.2>nginx.exe -s stop

或H:\nginx-1.12.2>nginx.exe -s quit

注:stop是快速停止nginx,可能並不保存相關信息;quit是完整有序的停止nginx,並保存相關信息。

 

(3)重新載入Nginx:

H:\nginx-1.12.2>nginx.exe -s reload

當配置信息修改,需要重新載入這些配置時使用此命令。

 

(4)重新打開日志文件:

H:\nginx-1.12.2>nginx.exe -s reopen

 

4. 測試是否配置成功

 

輸入域名:tomcat1.com和tomcat2.com

 

如果輸入域名后顯示如上圖,即為成功配置。

 

5.可能會遇到的問題(進程關閉失敗)

 

在使用的過程中,你可能會遇到一個很奇葩的問題,就是當關閉命令執行了無數遍,頁面卻還是可以直接用域名訪問。

這個時候就說明你的進程並沒有真正關閉,我們可以用命令來查詢一下:

cmd中輸入:netstat -an|find "0:80"

如果有,說明真的沒有關閉這個進程。沒有,那就看看是不是瀏覽器緩存的問題。

針對進程不能正常關閉,可以用如下命令來關閉:taskkill /F /IM nginx.exe > nul

 

以上就是用nginx服務器做反向代理服務器的全部內容,希望對你有所幫助。

如需轉載,請注明地址:http://www.cnblogs.com/j-star/p/8785334.html


免責聲明!

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



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