×

nginx 域名 代理轉(zhuǎn)發(fā)能解決什么問題?nginx詳細(xì)配置教程

分類:域名資訊 編輯:建站芝士 瀏覽量:185
2021-01-13 10:00:51
對于nginx 域名,有些朋友還是比較熟悉的,但是對于nginx 域名 代理轉(zhuǎn)發(fā)的情況還不太了解,那么nginx 域名 代理轉(zhuǎn)發(fā)能解決什么問題?nginx詳細(xì)配置教程是怎樣的呢?下面新網(wǎng)就給大家具體介紹下。
 
  nginx 域名 代理轉(zhuǎn)發(fā)能夠解決什么問題?
  nginx 域名 代理轉(zhuǎn)發(fā)能夠解決跨域問題。具體為:
  有兩個服務(wù)(或多個服務(wù)),各服務(wù)通過Redis做Session共享以實現(xiàn)單點(diǎ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知識百科

免費(fèi)咨詢獲取折扣

Loading