nginx詳解(下載,安裝,配置,反向代理,負載均衡詳史上最全最詳細)

1.下載:nginx-1.8.0.tar.gz(當然其他版本都是可以的)

官方網站:
http://nginx.org/
使用的版本是1.8.0版本。
在這裏插入圖片描述
下載鏈接:nginx下載(當然如何你不願意去官網下,我已經爲你準備好了,直接下載就行)

2. 要求的安裝環境

2.1、需要安裝gcc的環境。yum install gcc-c++
2.2、第三方的開發包。

 PCRE
PCRE(Perl Compatible Regular Expressions)是一個Perl庫,包括 perl 兼容的正則表達式庫。nginx的http模塊使用pcre來解析正則表達式,所以需要在linux上安裝pcre庫。
yum install -y pcre pcre-devel
注:pcre-devel是使用pcre開發的一個二次開發庫。nginx也需要此庫。
 zlib
zlib庫提供了很多種壓縮和解壓縮的方式,nginx使用zlib對http包的內容進行gzip,所以需要在linux上安裝zlib庫。
yum install -y zlib zlib-devel

 openssl
OpenSSL 是一個強大的安全套接字層密碼庫,囊括主要的密碼算法、常用的密鑰和證書封裝管理功能及SSL協議,並提供豐富的應用程序供測試或其它目的使用。
nginx不僅支持http協議,還支持https(即在ssl協議上傳輸http),所以需要在linux安裝openssl庫。
yum install -y openssl openssl-devel

3. 安裝步驟

第一步:把nginx的源碼包上傳到linux系統
第二步:解壓縮
[root@localhost ~]# tar zxf nginx-1.8.0.tar.gz
第三步:使用configure命令創建一makeFile文件。
./configure
–prefix=/usr/local/nginx
–pid-path=/var/run/nginx/nginx.pid
–lock-path=/var/lock/nginx.lock
–error-log-path=/var/log/nginx/error.log
–http-log-path=/var/log/nginx/access.log
–with-http_gzip_static_module
–http-client-body-temp-path=/var/temp/nginx/client
–http-proxy-temp-path=/var/temp/nginx/proxy
–http-fastcgi-temp-path=/var/temp/nginx/fastcgi
–http-uwsgi-temp-path=/var/temp/nginx/uwsgi
–http-scgi-temp-path=/var/temp/nginx/scgi

注意:啓動nginx之前,上邊將臨時文件目錄指定爲/var/temp/nginx,需要在/var下創建temp及nginx目錄
(mkdir /var/temp/nginx/client -p)

第四步:make
第五步:make install

在這裏插入圖片描述

4.啓動nginx

進入sbin目錄
[root@localhost sbin]# ./nginx

在這說薩達薩達撒述
關閉nginx:
[root@localhost sbin]# ./nginx -s stop
推薦使用:
[root@localhost sbin]# ./nginx -s quit

重啓nginx:
1、先關閉後啓動。
2、刷新配置文件:
[root@localhost sbin]# ./nginx -s reload

最後訪問nginx:
在這裏插入圖片描述
看到這,基本上nginx的安裝就基本結束!下面是介紹nginx的負載均衡和反向代理!
默認是80端口。
注意:是否關閉防火牆
總共三個地方有nginx:
1.就是/root/nginx>>>安裝包
2./usr/local/nginx>>>安裝目錄
3./var/temp/nginx>>>nginx需需要的零時目錄

5.nginx的反向代理

首先解釋下反向代理的含義:就是無數個請求過來,我們先會讓所有的請求請求nginx,然後由nginx統一處理,但其實nginx並不是真正的處理,而是將請求都分發給各個tomcat,一臺tomcat就代表一個應用服務器節點,然後等應用服務器處理後,最後再將請求返回給nginx,最後nginx再響應給請求的域名的過程。
注:反向代理指的是服務端的代理

6.虛擬主機

虛擬主機:如果你的公司比較窮,只有一臺服務器,但是你還要運行若干個網站,而且你還想讓每個網站的端口都是8080,那麼在做這件事的時候,nginx裏面的一個server就可以看作是一個虛擬主機。

首先nginx的配置文件裏面,
可以配置多個server,配置了多個虛擬主機。當你修改配置文件時,需要刷新配置文件!那麼問題來了,怎麼區分這些虛擬主機呢,很明顯,你當然可以通過端口,指定響應的域名,但是,假如兩個不同的域名(兩個網站都想用80端口)都想只通過80端口去反問自己的網站,誰都不願意反問的時候還要在後面加個81(默認80端口,不需要加),怎麼辦呢?答案是:通過配置host文件裏面的域名和ip的映射關係,一旦配置配置了,dns解析就不會走dns了(dns的作用就是用來解析域名可ip的對應關係 的),將n個域名都配置成同一臺服務器地址,然後在nginx的配置文件裏面配置多個server,指定不同的域名,端口都是80就可以了

7.負載均衡

在這裏插入圖片描述
如何需要添加多個節點,直接就在upstream tomcat1 裏面加多個節點就好了,如果想哪個節點權重多一點,直接配置如下:
在這裏插入圖片描述
至此,nginx配置完畢!謝謝光看!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章