配置nginx反向代理

我的環(huán)境是一臺centos7的騰訊云服務(wù)器,同時安裝了nginx和tomcat,配置反向代理以將對nginx的請求轉(zhuǎn)發(fā)給tomcat處理。

反向代理不僅可以使用tomcat,諸多其他服務(wù)器,如jetty都可以。

反向代理的作用有很多,可以把靜態(tài)文件交由nginx來進(jìn)行處理,作為靜態(tài)服務(wù)器,這樣可以方便緩存那些靜態(tài)文件,比如CSS,JS,html,htm等文件。還可以配置負(fù)載均衡,虛擬主機(jī),F(xiàn)astCGI等功能。

下邊詳細(xì)介紹如何配置反向代理。nginx的安裝過程,參見nginx官網(wǎng)安裝指南 ,tomcat安裝,請參考Apache tomcat 官方指南?

首先來看一下nginx配置文件中我們需要了解的幾個配置項(xiàng)

server {

listen? ? ? 80 default_server;

listen? ? ? [::]:80 default_server;

server_name? localhost;

root? ? ? ? /usr/share/nginx/html;

# Load configuration files for the default server block.

include /etc/nginx/default.d/*.conf;

location / {

proxy_pass http://localhost;

}

error_page 404 /404.html;

location = /40x.html {

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

}

}

這段代碼在server里面,相當(dāng)于一個代理服務(wù)器,當(dāng)然可以配置多個。

下面我們仔細(xì)來分析一下:

listen:表示當(dāng)前的代理服務(wù)器監(jiān)聽的端口,默認(rèn)的是監(jiān)聽80端口。注意,如果我們配置了多個server,這個listen要配置不一樣,不然就不能確定轉(zhuǎn)到哪里去了。

server_name:表示監(jiān)聽到之后需要轉(zhuǎn)到哪里去,這時我們直接轉(zhuǎn)到本地,這時是直接到nginx文件夾內(nèi)。

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

root:里面配置了root這時表示當(dāng)匹配這個請求的路徑時,將會在這個文件夾內(nèi)尋找相應(yīng)的文件,這里對我們之后的靜態(tài)文件服務(wù)器很有用。

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

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

那我們知道了具體的配置了,怎么讓它訪問localhost時轉(zhuǎn)到tomcat時。實(shí)際上就修改兩個地方:

server_name localhost:8080;

location?/?{

? proxy_pass?http://localhost:8080;

}

檢查nginx配置是否正確(這一步也可以省略)

nginx -t

重新加載nginx配置文件

nginx -s reload

重新訪問服務(wù)器ip或域名,原來的nginx服務(wù)器的web界面就會變成tomcat的web界面。

參考:nginx官網(wǎng)指南?

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容