linux nginx是一個高效能的HTTP和反向代理web伺服器,同時也提供了IMAP/POP3/SMTP服務;其特點是佔有記憶體少,並發能力強,事實上nginx的同時能力在同類型的網頁伺服器中表現較好。
1. nginx是什麼?
相信很多正在學習Linux或是已經在從事維運工作的朋友都有聽過nginx,那它究竟是什麼呢?為什麼這麼火?
首先nginx是由俄羅斯人發明的一款高性能的web伺服器,它同早期的Apache,IIS,Lighttpd等都具有web伺服器的功能,能夠發佈網站代碼等資源,為用戶提供信息資訊。但是nginx的功能不單單只是做為web伺服器,它還可以用來做反向代理和負載平衡伺服器,並且整體性能非常強大,在web前端伺服器目前是企業的首選。
在國外的[Netcraft News]這個網站統計了全球最熱門的網站所使用的web伺服器,其中nginx目前一直穩居第一位:
目前,我們國內基本上大多數的網路企業入口網站也都採用的是nginx,包括
<p>阿里巴巴开源镜像站-OPSX镜像站-阿里云开发者社区 developer.aliyun.com/mirror/ 网易开源镜像站 mirrors.163.com/ 清华大学开源软件镜像站 | Tsinghua Open Source Mirror mirrors.tuna.tsinghua.edu.cn </p>
等等。
2. nginx能做什麼?
在後面幾篇文章中,會詳細實戰nginx的各大用法。在這裡,先做一個簡單介紹:
2.1 nginx可以做反向代理:
nginx的反向代理是nginx的是個非常重要的功能,它可以隱藏後端伺服器的數量,並且保證後端伺服器免受攻擊,示意圖如下:
#當用戶向這個網站發起請求,其實對用戶這個請求處理的是後端真實伺服器,中間的伺服器就是反向代理伺服器。
2.2 nginx可以做負載平衡:
nginx的負載平衡其實是反向代理的延伸,當單一後端伺服器無法處理前端龐大的請求時,可以為後端多準備幾台伺服器,共同分攤流量,這就是負載平衡,也叫均衡負載,示意圖如下:
#2.3 nginx可以做域名重定向:
重定向也是web伺服器非常重要的功能,我來舉一個例子:假設你們公司現在有一個域名,很多老用戶已經習慣了是這個域名來訪問你們的網站。當公司進行改造並更換網域時,就可能出現失去許多老用戶的情況。我們可以透過nginxd的重定向來解決這個問題,只需將訪問原域名的流量重定向到新域名即可。這個技術的實戰,會在後面透過實例來示範。
除了進行網域重定向,還可以進行內部重定向,例如當使用者存取不存在的資源時,我們希望提供一些指導資訊或將其重定向至首頁。這時,就可以寫內部重定向實作了。
2.4 nginx可以做動靜分離:
動靜分離是nginx的反向代理功能之一,它非常強大且特別,通常獨立地被討論。因為nginx處理靜態資源的能力非常強,效率非常高。所以很多時候,我們會將使用者請求的靜態資源直接交由nginx代理伺服器處理,然後把動態的應用程式代理到後端,給應用程式伺服器處理,以此來提高使用者體驗,動靜分離示意圖如下:
Nginx具備許多強大功能,包括快取伺服器、郵件代理伺服器和微服務閘道等。掌握Linux或執業維運工程師,都應當學習並精通這項強大的服務應用。
以上是linux nginx的概念是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!