簡(jiǎn)訊:Nginx的安裝配置最全最新

2023-01-10 11:19:39 來(lái)源:51CTO博客


(相關(guān)資料圖)

yum安裝(最簡(jiǎn)單)

# 命令來(lái)一建安裝,搞定yum install -y nginx通過(guò)yum安裝的Nginx的配置文件可能位于/etc/nginx/nginx.conf。

1.安裝編譯環(huán)境所需依賴包

# linux版本的需要先進(jìn)行源碼編譯,編譯時(shí)需要gcc環(huán)境yum install -y gcc-c++# pcre是一個(gè)perl的庫(kù),包括perl兼容的正則表達(dá)式庫(kù)。nginx的http模塊會(huì)使用pcre解析正則表達(dá)式。yum install -y pcre pcre-devel# zlib提供了多種壓縮和解壓縮的方式,nginx使用zlib對(duì)http包進(jìn)行g(shù)zip,所以依賴于zlib庫(kù)yum install -y zlib zlib-devel# OpenSSL 是一個(gè)強(qiáng)大的安全套接字層密碼庫(kù),囊括主要的密碼算法、常用的密鑰和證書封裝管理功能及SSL協(xié)議,nginx不# 僅支持http協(xié)議,還支持https(即在ssl協(xié)議上傳輸http)yum install -y openssl openssl-devel

2. 下載安裝包

# 下載Nginx安裝包wget https://nginx.org/download/nginx-1.9.7.tar.gz# 解壓安裝包至 /usr/local目錄下tar -zxvf nginx-1.19.7.tar.gz -C /home/lys

3. 編譯安裝文件

# 設(shè)置安裝的目錄./configure --prefix=/home/lys/nginx# 編譯安裝cd /home/lys/nginx-1.9.7make && make install

常用指令

啟動(dòng)

# 啟動(dòng)Nginx服務(wù),使用nginx目錄下的nginx命令啟動(dòng)(默認(rèn)80)/home/lys/nginx/sbin/nginx# 檢測(cè)nginx服務(wù)是否啟動(dòng)方式一# 查看linux中關(guān)于nginx的進(jìn)程ps -ef |grep nginx# 檢測(cè)nginx服務(wù)是否啟動(dòng)方式二 netstat -anop | grep 80# 關(guān)閉防火墻后,在瀏覽器中訪問(wèn)虛擬機(jī)ipservice firewalld stop

關(guān)閉

# 一、此方式相當(dāng)于查到nginx的進(jìn)程,直接殺掉,不友好/home/lys/nginx/sbin/nginx -s stop# 二、此方式允許Nginx服務(wù)器不再接受新的請(qǐng)求,并且把當(dāng)前請(qǐng)求處理完成之后關(guān)閉服務(wù)/home/lys/nginx/sbin/nginx -s quit

重啟指令

# 一、先關(guān)閉再啟動(dòng)/home/lys/nginx/sbin/nginx -s quit/home/lys/nginx/sbin/nginx# 二、重新加載配置文件/home/lys/nginx/sbin/nginx -s reload

檢測(cè)配置文件語(yǔ)法

# 一、 指定要檢測(cè)的文件路徑名稱/home/lys/nginx/sbin/nginx -t -c  /home/lys/nginx/conf/nginx.conf # 二、 默認(rèn)文件可以參略./nginx -t

語(yǔ)法常用配置

其中,一個(gè)server就相當(dāng)于一個(gè)服務(wù)器,你可以配置多個(gè)server模塊來(lái)虛擬多個(gè)服務(wù)器。listen表示該服務(wù)器監(jiān)聽哪個(gè)端口,默認(rèn)是80端口。server_name表示匹配主機(jī)名,比如我的server_name是localhost,那么,當(dāng)客戶端通過(guò)域名localhost(前提是該域名已經(jīng)正確解析到該服務(wù)器的IP地址)來(lái)訪問(wèn)的時(shí)候,就是匹配到這個(gè)服務(wù)器。如果客戶端通過(guò)域名localhost:8080來(lái)訪問(wèn)的時(shí)候,就會(huì)匹配到下面那個(gè)服務(wù)器。如果你通過(guò)IP直接訪問(wèn),會(huì)默認(rèn)訪問(wèn)第一個(gè)服務(wù)器。

location就是匹配的路由,root是返回給客戶端資源文件的根目錄,它是相對(duì)nginx路徑的,也可以指定絕對(duì)路徑(比如:/usr/local/nginx/www)。index就是默認(rèn)返回的文件名(比如index.html,index.php,index.asp等)。

location指令說(shuō)明

該指令用于匹配URL

=用于不含正則表達(dá)式的uri前,要求請(qǐng)求字符串與uri嚴(yán)格匹配,如果匹配成功,就停止繼續(xù)向下搜索并立即處理該請(qǐng)求~用于表示含uri的正則表達(dá)式,并且區(qū)分大小寫~*用于包含uri的正則表達(dá)式,并且不區(qū)分大小寫^~用于不含正則表達(dá)式的uri前,要求Nginx服務(wù)器找到表示uri和請(qǐng)求字符串匹配度最高的location之后,立即使用此location處理請(qǐng)求,而不再使用location塊中的uri和請(qǐng)求字符串作比較

樣例1

# 訪問(wèn)80端口時(shí)  server {        listen  80;        server_name  localhost;        location / {            root   html;            index  index.html index.htm;        }                # 設(shè)置nacos        location ^~/api_nacos/ {            proxy_pass http://10.0.37.2:8849/;            proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;            proxy_set_header    X-real-ip $remote_addr;        }    }  # 訪問(wèn)8080端口時(shí)    server {        listen  8080;        server_name  localhost222;        location / {            root   html;            index  index.html index.htm;        }                # 設(shè)置nacos        location ^~/api_nacos/ {            proxy_pass http://10.0.37.2:8849/;            proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;            proxy_set_header    X-real-ip $remote_addr;        }                # 設(shè)置web01        location ^~/api_web01/ {            proxy_pass http://10.0.39.21:8222/;            proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;            proxy_set_header    X-real-ip $remote_addr;        }        # 設(shè)置web02        location ^~/api_web02/ {            proxy_pass http://10.0.39.22:8333/;            proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;            proxy_set_header    X-real-ip $remote_addr;        }    }

配置負(fù)載均衡

增加服務(wù)器的數(shù)量,然后將請(qǐng)求分發(fā)到各個(gè)服務(wù)器上,將原先請(qǐng)求集中到單個(gè)服務(wù)器上的情況改為將請(qǐng)求分發(fā)到多個(gè)服務(wù)器上,將負(fù)載分發(fā)到不同的服務(wù)器,也就是我們所說(shuō)的負(fù)載均衡

標(biāo)簽: 正則表達(dá)式 服務(wù)器上 配置文件

上一篇:Diffie-Hellman密鑰協(xié)商算法探究
下一篇:觀察:【Redis 技術(shù)探索】「數(shù)據(jù)遷移實(shí)戰(zhàn)」手把手教你如何實(shí)現(xiàn)在線 + 離線模式進(jìn)行遷移 Redis 數(shù)據(jù)實(shí)戰(zhàn)指南(數(shù)據(jù)檢查對(duì)比)