【Nginx】入門熟悉

剛開始接觸,把一些學習的內容記錄下來,便於記憶與以後回顧。

nginx個人感覺主要用在反向代理與負載均衡上。本次結合tomcat操作,記錄主要操作過程,以便加深記憶。

下載略過,因爲ubuntu系統有點問題,用windows進行。下載後在解壓目錄下運行相關命令可以對nginx進行相關操作。

主要幾個操作有:啓動:start nginx;停止 nginx -s stop;重啓:nginx -s reload;目前這幾個就夠用了應該。啓動成功後查看資源管理器可以看到nginx進程。同時打開http://localhost可以看到相應頁面。


主要的操作是針對conf文件夾下的nginx.conf文件,下面貼出對文件中server內部的解釋:

listen:表示當前的代理服務器監聽的端口,默認的是監聽80端口。注意,如果我們配置了多個server,這個listen要配置不一樣,不然就不能確定轉到哪裏去了。

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

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

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

index:當沒有指定主頁時,默認會選擇這個指定的文件,它可以有多個,並按順序來加載,如果第一個不存在,則找第二個,依此類推。

下面的error_page是代表錯誤的頁面,這裏我們暫時不用,先不管它。


下面按主要點分別說明:

1.轉發(proxy_pass)

  1. location / {  
  2.     proxy_pass http://localhost:8080;
  3. }
在location中添加該屬性,那麼訪問時nginx會轉發至8080端口的服務。可以自己啓動一個tomcat進行驗證。


2.過濾(~ \.(*|*)$ )

  1. location ~ \.jsp$ {  
  2.         proxy_pass http://localhost:8080;  
  3. }  
  4.           
  5. location ~ \.(html|js|css|png|gif)$ {  
  6.     root D:/software/developerTools/server/apache-tomcat-7.0.8/webapps/ROOT;  
將loction修改至上的情況的話,那麼表示只將jsp文件交給了8080服務處理,而下面的js,png之類可以由nginx直接從本地獲取(即下面的root路徑下),相當於緩存了。當然,因爲loction後的/被改變了,直接訪問location是會有404的,用http://localhost/index.jsp才能看到。

3.負載均衡(upstream)

  1. upstream local_tomcat {  
  2.     server localhost:8080 weight=1;  
  3.     server localhost:9999 weight=5;  
  4. }
  1. server{  
  2.         location / {  
  3.            proxy_pass http://local_tomcat;  
  4.         }  
  5.         #......其他省略  
此處所謂的負載均衡就是在轉發的接觸上稍微做些改變。如上代碼。原先location中的proxy_pass是寫死的8080地址,現在改成了一個變量(即http://local_tomcat)。該變量在server之外,由upstream定義,具體格式如上。值得注意的是,"http://"是加在proxy_pass後,而不是在upstream中的server後。其中尾部可以追加weight關鍵字(非必填),表示訪問權重,權重越高,被訪問到機率越大。

發佈了19 篇原創文章 · 獲贊 3 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章