nginx 域名 代理轉(zhuǎn)發(fā)能解決什么問題?nginx詳細(xì)配置教程
nginx 域名 代理轉(zhuǎn)發(fā)能夠解決什么問題?
nginx 域名 代理轉(zhuǎn)發(fā)能夠解決跨域問題。具體為:
有兩個服務(wù)(或多個服務(wù)),各服務(wù)通過Redis做Session共享以實現(xiàn)單點登錄。其中登錄走的是API服務(wù),前端通過Cookie來維持登錄狀態(tài)。在API服務(wù)登錄之后,在所有服務(wù)中這個用戶(Token)都是登錄是登錄狀態(tài)的。
因為登錄走的是API服務(wù),那么Cookie的作用域是api.guitu18.com,這時候訪問WEB項目,WEB后臺雖然知道這個用戶(token)是登錄的,但因為請求是從web.guitu18.com域發(fā)起的,WEB服務(wù)是無法獲取api.guitu18.com域下的Cookie的。
提升Cookie作用域
那么現(xiàn)在需要解決跨域問題,因為是同一頂級域下的服務(wù),我們之前的做法是將Cookie作用域提升到頂級域下,這時候二級域是能夠獲取到頂級域下的Cookie的(Cookie作用域是向下兼容),那WEB服務(wù)也就能夠拿到這個用戶的Token識別登錄狀態(tài)了。
服務(wù)端代理
現(xiàn)在升級為Nginx代理來解決跨域問題,方式是通過對接口路徑前綴進(jìn)行匹配來實現(xiàn)。約定API服務(wù)中所有的接口路徑以api開頭,WEB服務(wù)在請求API服務(wù)時不用指向API域名,而是指向自身域名https://web.guitu18.com,然后在Nginx中對WEB域下以api開頭的路徑進(jìn)行代理,轉(zhuǎn)發(fā)到API服務(wù)。
nginx怎么反向代理域名
先說正向代理吧:正向代理就是通過VPN或其他轉(zhuǎn)發(fā)客戶端請求,比如你開游戲加速器這樣,請求是通過別人機(jī)器發(fā)送給服務(wù)器的,服務(wù)主體是客戶端
反向代理就相反,是代理服務(wù)器的。是針對服務(wù)器收到和響應(yīng)的信息進(jìn)行轉(zhuǎn)發(fā)。好處是代理服務(wù)器和服務(wù)器對外就是一個服務(wù)器,暴露的是代理服務(wù)器地址,隱藏了真實服務(wù)器IP。常用的一般是Nginx代理,免費(fèi)并且性能穩(wěn)定。
配置監(jiān)聽IP
listen address[:port] [default_server] [setfib=number] [backlog=number] [rcvbuf=size] [sndbuf=size] [deferred] [accept_filter=filter] [bind] [ssl];
配置監(jiān)聽端口PORT
listen port[default_server] [setfib=number] [backlog=number] [rcvbuf=size] [sndbuf=size] [accept_filter=filter] [deferred] [bind] [ipv6only=on|off] [ssl];
配置 UNIX Domain Socket
listen unix:path [default_server] [backlog=number] [rcvbuf=size] [sndbuf=size] [accept_filter=filter] [deferred] [bind] [ssl];
下面給個實例:
比如想通過nginx代理一下tomcat服務(wù),使用nginx配置的虛擬主機(jī)地址來訪問,修改配置文件nginx.conf
server { listen 8089; server_name 1.1.1.1:7777;
location / { # tomcat首頁;
proxy_pass http://localhost:8080; # tomcat路由)
} };
保存退出后重啟Nginx,還有更多參數(shù)請參考手冊。
nginx詳細(xì)配置教程
訪問Nginx,確保Nginx已經(jīng)成功安裝。
通過端口區(qū)分不同的主機(jī):nginx配置文件nginx.conf,位置:/usr/local/nginx/conf/。通過配置多個server,實現(xiàn)多個虛擬機(jī)的配置。
復(fù)制原來的html目錄將其更名為html-81,以進(jìn)行測試。
為便于區(qū)分,對index.html文件進(jìn)行修改。修改完成后刷新。
再分別訪問兩臺服務(wù)器
多個域名區(qū)分主機(jī):修改配置文件。
Ngix的正向代理功能
Ngix的反向代理功能。
通過以上的內(nèi)容,我們已經(jīng)了解了nginx 域名 代理轉(zhuǎn)發(fā)能夠解決的問題了,大家在做nginx 域名 代理轉(zhuǎn)發(fā)的時候,就可以按照上面的方法去做,如有疑問,可以咨詢新網(wǎng)。
聲明:免責(zé)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),也不承認(rèn)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,請發(fā)
送郵件至:operations@xinnet.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,本站將立刻刪除涉嫌侵權(quán)內(nèi)容。本站原創(chuàng)內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時
需注明出處:新網(wǎng)idc知識百科