Windows下Nginx與tomcat組合簡單使用

來源:互聯網
上載者:User

標籤:首頁   www   bsp   inter   簡介   項目   發送   完成   靜態資源   

本文轉載自: http://www.cnblogs.com/naaoveGIS/

1.背景

項目中瓦片資源越來越多,如果提高瓦片的訪問效率是一個需要解決的問題。這裡,我們考慮使用Nginx來代理靜態資源進行初步解決。

2.Nginx簡介

Nginx ("engine x") 是一個高效能的HTTP和反向 Proxy伺服器,也是一個IMAP/POP3/SMTP伺服器。Nginx是由Igor Sysoev為俄羅斯訪問量第二的Rambler.ru網站開發的。

何為反向 Proxy呢?即以Proxy 伺服器來接受internet上的串連請求,然後將請求轉寄給內部網路上的伺服器,並將從伺服器上得到的結果返回給internet上請求串連的用戶端,此時Proxy 伺服器對外就表現為一個伺服器。

而Nginx主要完成的工作就是反向 Proxy,比如我們向一台伺服器的80連接埠發送了請求,該請求首先由Nginx監聽到,其接受到請求內容後再轉寄給其他伺服器,其他伺服器處理完後再將結果傳送給Nginx,最後由Nginx來統一返回給初始請求端。

Nginx最常見的使用方法就是作為靜態資源伺服器,比如將CSS,JS,html,htm等檔案進行緩衝處理。

3.環境搭建3.1下載

首先在官網中下載所需版本:http://nginx.org/en/download.html。目前我使用的版本是windows環境下的1.9.15。

下載完畢後,解壓。

3.2開啟Nginx

開啟Nginx有兩種方法,一種是直接點擊開啟,一種是命名行開啟。

a.點擊開啟:

                       

b.命名行開啟:

 

開啟成功後,在資源管理中可以看到:

 

3.3常見問題—啟動失敗

出現啟動失敗問題,一般是連接埠衝突問題,比如win7下的IIS已經啟動並佔用了80連接埠。在config目錄下找到nginx.conf,開啟檔案進行如下修改:

 

4.初步使用4.1用網頁測試是否啟動成功

 

其中的配置為:

 

其表示監聽8010連接埠請求後,會首先去html檔案夾下尋找index.html頁面。

 

4.2詳解部分參數含義

listen:表示當前的Proxy 伺服器監聽的連接埠,預設的是監聽80連接埠。注意,如果我們配置了多個server,這個listen要配置不一樣,不然就不能確定轉到哪裡去了。

server_name:表示監聽到之後需要轉到哪裡去,這時我們直接轉到本地,這時是直接到nginx檔案夾內。

location:表示匹配的路徑,這時配置了/表示所有請求都被匹配到這裡

root:裡面配置了root這時表示當匹配這個請求的路徑時,將會在這個檔案夾內尋找相應的檔案,這裡對我們之後的靜態檔案伺服很有用。

index:當沒有指定首頁時,預設會選擇這個指定的檔案,它可以有多個,並按順序來載入,如果第一個不存在,則找第二個,依此類推。

4.3配置tomcat跳轉

 

 

通過proxy_pass配置請求轉寄地址。即當訪問localhost的8010連接埠時,請求會跳轉至localhost的8080連接埠處。修改完Nginx的配置後不需要重啟Nginx,輸入如下命令即可:

 

測試如下:

 

5.進一步使用5.1靜態檔案分離配置

 

上面我們直接試了一個小例子,讓nginx進行轉寄,即所謂的反向 Proxy。但實際上我們的需求不會是這樣的,我們需要分檔案類型來進行過濾,比如jsp直接給tomcat處理,因為nginx並不是servlet容器,沒辦法處理JSP,而html,js,css這些不需要處理的,直接給nginx進行緩衝。

      下面我們來進行一下配置,讓JSP頁面直接給tomcat,而html,png等一些圖片和JS等直接給nginx進行緩衝。

      這時最主要用的還是location這個元素,並且涉及到一部分正則,但不難,具體配置如下:

 

此時再直接輸入localhost:8010,則會報404錯誤了。但是輸入localhost:8010/index.jsp,則一樣可以跳轉至tomcat首頁中。

 

5.2 負載配置

當一台伺服器出現故障後,我們需要將請求自動轉向另一台伺服器,此種需求該如何配置呢?利用Nginx也是比較方便能夠實現,具體配置如下:

 

注意,上面還加上了一個weight屬性,此屬性工作表示各伺服器被訪問到的權重,weight越高訪問到的幾率越高。

5.3其他配置

 

5.4關閉Nginx

          

 

Windows下Nginx與tomcat組合簡單使用

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.