Nginx反向代理多個服務器,意思是說,當我們發起了不同的請求到nginx,nginx會根據請求的不同,轉發到不同的服務器,如下圖,當我們通過8000端口訪問資源a時,nginx會將請求轉發到8080服務器,當訪問資源b時,會轉發到8081服務器

我們先做下準備工作,首先準備兩個tomcat服務器,分別是8080端口和8081端口,8080端口是默認的,這里進行修改8081的端口,首先我們進入tomcat下的conf目錄下,進入server.xml文件進行如下兩個地方的修改
一、修改shutdown端口號為8015

二、修改start端口號為8081

這樣我們就有了兩個tomcat了,接下來我們啟動一下這兩個tomcat,看是否都能訪問,如果不能訪問,可能就是你防火墻的問題, systemctl stop firewalld ,這個命令可以關閉防火墻,如果還不能訪問,可能是阿里云未打開端口

當你的tomcat都可以正常訪問后,我們在8080服務器上部署資源a,在8081服務器上部署資源b,具體部署,就是在tomcat下的webapps目錄下分別創建a目錄和b目錄,并創建index.html,里面分別寫8080,8081,方便一會測試,這里給出資源a



好了,接下來就是配置nginx了,進入到nginx的conf目錄下打開nginx.conf文件,手動配置一個server塊

該server的意思是:
- listen 8000:監聽8000端口,也就是我們直接訪問的nginx端口
- server_name localhost:是域名
- location ~ /a/:是所有訪問a資源的請求,會通過下面的代理轉發
- http://39.106.231.3:8080;意思是代理轉發到ip為39.106.231.3主機下的8080服務器
配置好之后,在sbin目錄下執行./nginx -s reload,重新加載配置文件
訪問:39.106.231.3:8000/a

訪問:39.106.231.3:8000/b
到此這篇關于Nginx反向代理多個服務器的實現方法的文章就介紹到這了,更多相關Nginx反向代理服務器內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!