精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Nginx緩存引發的跨域慘案

開發 前端
如果不涉及跨域,混用 http/https協議 + nginx緩存,其實也是沒有問題的。但是一旦出現了跨域使用,必須 在nginx 緩存配置中,配置 scheme + host + uri + 參數。

1. 前言

貴金屬wap版直播間上線后,偶爾有用戶反饋,在進入wap直播間的時候,出現空白頁面,但是重新刷新又可以正常顯示了。我們曾一度認為是網絡請求異?;蚣嫒輪栴},直到開發PC版直播間,在進行調試中,同樣遇到了“白屏”問題,才引起了足夠重視,并進行了問題跟蹤與分析。現在跟大家分享一下,這種偶然現象出現的原因。

我們的直播間落地頁在fa.163.com 系統,而直播間內容,是通過 向直播間系統 qz.fa.163.com 發起Ajax請求獲取的。在出現“白屏”的時候,可以通過瀏覽器的調試窗口,可以看到出現下面的報錯

 

2. 問題分析

從上述錯誤提示文案中可以看到,問題首先和 跨域 有關。

何為跨域

從字面上理解為“跨域名”,瀏覽器不能執行其他網站的腳本,然而,跨域不僅僅局限于域名這一項。只要協議、域名、端口有任何一個不同,都被當作是不同的域。 這是由于>同源策略的限制,從一個域上加載的腳本不允許訪問另外一個域的文檔屬性。雖然在瀏覽器中,<script>、<img>、<iframe>、<link>等標簽都>可>以加載跨域資源,而不受同源限制,但瀏覽器會限制腳本中發起的跨域請求。比如,使用 XMLHttpRequest 對象和Fetch發起 HTTP 請求就必須遵守同源策略。

同源策略/SOP(Same origin policy)是一種約定,它是瀏覽器最核心也最基本的安全功能,如果缺少了同源策略,瀏覽器很容易受到XSS、CSFR等攻擊。SOP要求兩個通訊地址的協議、域名、端口號必須相同,否則兩個地址的通訊將被瀏覽器視為不安全的,并被block下來。

舉個例子:從貴金屬主站 http://fa.163.com 發起請求訪問以下url:

 

解決跨域

在實際應用中有多種方式來解決跨域問題,相信在實踐中都會用到其中的某些方案:

(1).JSONP (無狀態連接,不能獲悉連接狀態和錯誤事件,而且只能走GET的形式)

(2).iframe形式

(3).服務器代理

頁面直接向同域的服務端發請求,服務端進行跨域處理或爬蟲后,再把數據返回給客戶端頁。

(4).CORS

CORS(Cross-Origin Resource Sharing)跨域資源共享,定義了必須在訪問跨域資源時,瀏覽器與服務器應該如何溝通。CORS背后的基本思想就>是使用自定義的HTTP頭部讓瀏覽器與服務器進行溝通,從而決定請求或響應是應該成功還是失敗。目前,所有瀏覽器都支持該功能,IE瀏覽器不能低>于IE10。整個CORS通信過程,都是瀏覽器自動完成,不需要用戶參與。對于開發者來說,CORS通信與同源的AJAX通信沒有差別,代碼完全一樣。瀏>覽器一旦發現AJAX請求跨源,就會自動添加一些附加的頭信息,有時還會多出一次附加的請求,但用戶不會有感覺。

CORS方式實現:

瀏覽器在發出CORS請求時會在頭信息之中增加一個Origin字段;后端返回代碼中增加三個字段

  1. header(“Access-Control-Allow-Origin”:“”);           // 必選 允許所有來源訪問 
  2.  
  3. header(“Access-Control-Allow-Credentials”:“true”);  //可選 是否允許發送cookie 
  4.  
  5. header(“Access-Control-Allow-Method”:“POST,GET”);   //可選 允許訪問的方式  

nginx是一個高性能的web服務器,常用作反向代理服務器。nginx作為反向代理服務器,就是把http請求轉發到另一個或者一些服務器上。通過把本地一個url前綴映射到要跨域訪問的web服務器上,就可以。

為了解決跨域問題,我們選擇方案d , 在直播間的過濾器中,統一添加了如下代碼:

  1. <a href='http://www.jobbole.com/members/wx610506454'>@Override</a> 
  2.  
  3. public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { 
  4.  
  5.  // 加入響應頭 
  6.  
  7.  String origin = request.getHeader("Origin"); 
  8.  
  9.  if("http://fa.163.com".equals(origin) || "https://fa.163.com".equals(origin) ) { 
  10.  
  11.      response.addHeader("Access-Control-Allow-Origin", origin); 
  12.  
  13.      response.addHeader("Access-Control-Allow-Credentials""true"); 
  14.  
  15.  } 
  16.  
  17.  return true 

從錯誤提示文案中,我們還可以看到錯誤提示的關鍵點 “http://fa.163.com” that is not equal to the supplied origin. Origin ‘https://fa.163.com‘ is therefore not allowed access.

目前我們的系統同時支持http訪問和https訪問,但是為什么使用 http訪問 ,返回的header中卻是 https 協議呢?

通過多次模擬,確認出現問題的請求中,Request URL使用的協議和 response返回的headers中的 Access-Control-Allow-Origin 中的 協議確實不一致,且還有一個特性,X-Cached 為 HIT,如下圖:

 

命中了緩存的請求,出現了協議不一致?

突然想到,這個接口,我們配置了nginx 緩存,那必然和nginx緩存有關了。

Nginx 緩存

Nginx (engine x) 是一個高性能的HTTP和反向代理服務器。

首先從源服務器(內部網絡上的web服務器)上獲取內容,然后把內容返回給用戶,同時,也會把內容保存到代理服務器上一份,這樣日后再接收同樣的信息請求時,他會把本地緩存里的內容直接發給用戶,以此減少后端web服務器的壓力,提高響應速度。這其實就是緩存服務器所實現的功能。如下圖所示。

 

進入直播間后,首先需要查詢直播內容是否有更新,而這個接口客戶端會以5s間隔輪詢,為了減少tomcat的壓力,我們配置了nginx緩存。配置如下

 

其中:

proxy_cache_methods: 用來設置HTTP哪些方法會被緩存,直播間接口配置了GET、HEAD、POST;

proxy_cache_valid: 用來設置對不同HTTP狀態碼的不同緩存時間。直播間接口配置了對于 返回值為200的狀態碼,緩存5秒;

proxy_cache_min_uses: 用來設置多少次訪問后,應答值會被緩存,配置為3次;

proxy_cache_key: 設置Web緩存的key

proxy_cache: 用來設置哪個緩存區將被使用,并定義緩存區的名稱

通過上述配置,我們可以看到 proxy_cache_key 配置中,只配置了host + uri + 參數,但沒有配置協議,所以無論用http訪問,還是https訪問,只要被緩存后,返回的內容都是一樣的,而不會區分http或https。從而引起了跨域問題。

至此,問題分析完畢。

3. 問題解決

跟運維同學溝通后,通過修改nginx配置,將協議類型scheme加入到緩存查找的判斷參數中,配置如下。

 

問題得到了解決。

4. 總結

上述“慘案” ,是 跨域、nginx緩存、http/https協議 這三種條件同時出現引發的。

如果不涉及跨域,混用 http/https協議 + nginx緩存,其實也是沒有問題的。但是一旦出現了跨域使用,必須 在nginx 緩存配置中,配置 scheme + host + uri + 參數。 

責任編輯:龐桂玉 來源: 數據庫開發
相關推薦

2017-08-24 17:37:18

DNS緩存分析

2021-11-01 17:29:02

Windows系統Fork

2017-09-01 09:17:51

DNS緩存慘案

2022-11-29 21:26:26

跨域配置

2019-04-10 10:32:16

CORSNginx反向代理

2024-05-13 08:37:17

炫技H5UI

2024-07-12 08:52:50

2025-10-10 08:23:56

2011-04-27 10:02:54

兼容墨盒用戶體驗

2013-03-22 10:53:42

PyConPython

2021-07-24 13:11:19

Redis數據技術

2023-01-09 18:12:20

多線程故障組件

2010-02-25 15:22:02

2024-02-27 08:14:51

Nginx跨域服務

2018-04-07 17:13:12

密碼慘案服務器

2025-07-21 06:30:00

2025-03-31 08:30:00

2021-04-27 15:20:41

人工智能機器學習技術

2021-06-15 07:32:59

Cookie和Sess實現跨域

2019-08-14 10:49:20

Python編程語言代碼
點贊
收藏

51CTO技術棧公眾號

无码人妻丰满熟妇区96| 99国产盗摄| 成年人看的免费视频| 99久久99九九99九九九| 亚洲综合清纯丝袜自拍| 免费精品视频一区| 91精品视频免费在线观看| 亚洲午夜电影| 亚洲最新av在线| 李丽珍裸体午夜理伦片| 2019年精品视频自拍| 亚洲一区日韩精品中文字幕| 欧美日本国产精品| 亚洲国产精品久久人人爱潘金莲| 欧美中文字幕| 欧美激情欧美激情在线五月| 国产激情在线免费观看| 日韩成人18| 欧美无人高清视频在线观看| 国产aaa免费视频| 看女生喷水的网站在线观看| 久久久久久久久岛国免费| 999热视频| 中文字幕在线观看欧美| 亚洲尤物精选| 午夜精品久久久99热福利| 久久噜噜色综合一区二区| 亚洲黄页网站| 精品乱码亚洲一区二区不卡| 女同激情久久av久久| 激情开心成人网| 欧美日韩午夜视频在线观看| 色婷婷777777仙踪林| 999国产在线视频| 91麻豆国产精品久久| 成人在线观看av| 国产精品久久久久久免费播放 | 伊人色综合影院| 免费在线一级视频| 97se亚洲国产综合在线| 国产精品国产精品国产专区不卡| 国产美女精品视频国产| 精品一区二区免费视频| 日本91av在线播放| 黄色在线观看国产| 久久国产成人| 日本人成精品视频在线| 精品人妻一区二区色欲产成人| 亚洲精品精选| 91精品国产高清久久久久久久久 | 欧美做受喷浆在线观看| 美女一区2区| 亚洲精品久久久久久久久| 任你躁av一区二区三区| 中文字幕日韩高清在线| 日韩欧美国产系列| 催眠调教后宫乱淫校园| 国产精品videossex| 亚洲精品乱码久久久久久金桔影视| 第一页在线视频| 欧美黄色录像| 亚洲一区二区精品| 亚洲图片第一页| 亚洲啊v在线观看| 美女性感视频久久久| 日本a级片视频| 亚洲伦理一区| 国产91精品网站| 亚洲永久精品视频| 国产乱人伦偷精品视频不卡| 俄罗斯精品一区二区| 色偷偷在线观看| 久久久久久久免费视频了| 欧美日韩国产综合在线| h网站在线免费观看| 自拍视频在线观看一区二区| 中文字幕精品在线播放| 91九色在线播放| 欧美专区日韩专区| 亚洲综合123| 林ゆな中文字幕一区二区| 亚洲欧美制服综合另类| 少妇高潮惨叫久久久久| 亚洲最大av| 5252色成人免费视频| 波多野结衣在线观看视频| 精一区二区三区| 国产免费高清一区| 国产精品四虎| 亚洲精品国产第一综合99久久| 俄罗斯av网站| 欧美videos粗暴| 亚洲第一网中文字幕| 国产一二三四五区| 久久精品青草| 日韩av免费在线播放| 国产情侣在线播放| 26uuu国产日韩综合| 成年人免费观看的视频| 国产调教在线| 欧美乱妇20p| 欧美色图亚洲激情| 欧美1区3d| 国产精品久久婷婷六月丁香| 性欧美8khd高清极品| 久久精品这里都是精品| 丁香色欲久久久久久综合网| 制服诱惑亚洲| 亚洲成人免费网站| 国精品无码一区二区三区| 小嫩嫩精品导航| 高清视频一区| 麻豆传媒视频在线| 91久久一区二区| 在线看黄色的网站| 天天综合网91| 国产精品福利片| 天天干天天草天天射| 自拍偷拍国产亚洲| 在线观看亚洲色图| 国产精品一区二区av交换| 久久久久成人精品| 国产女同91疯狂高潮互磨| 国产欧美日韩卡一| 少妇性饥渴无码a区免费| 91在线一区| 欧美日韩高清区| 国产又粗又黄又爽视频| 国产午夜精品福利| 日韩欧美精品在线观看视频| 51精品国产| 欧美国产第一页| 国产男女无套免费网站| 国产精品三级在线观看| 在线免费观看视频黄| 欧美男男gaytwinkfreevideos| 97人洗澡人人免费公开视频碰碰碰| 精品国产乱码一区二区三 | 日本黄色片一级片| 亚洲天堂中文字幕在线观看 | 国产三级电影在线播放| 精品国产乱码久久久久久浪潮| 私库av在线播放| 国产老肥熟一区二区三区| 在线无限看免费粉色视频| 91p九色成人| 日韩中文字幕国产精品| 一级淫片免费看| 中文字幕在线观看一区| 天天干天天玩天天操| 91视频久久| 91中文在线视频| av官网在线播放| 日韩欧美成人一区二区| 国产一级一级片| 99国产欧美另类久久久精品| av片中文字幕| 日韩av二区| 亚洲一区二区在线播放| 欧美性受ⅹ╳╳╳黑人a性爽| 欧美v国产在线一区二区三区| 久久久久久欧美精品se一二三四| 国产成人自拍高清视频在线免费播放 | 成人av无码一区二区三区| 亚洲资源中文字幕| 亚洲av无码一区二区三区网址| 一本久道综合久久精品| 久久香蕉综合色| av成人亚洲| 欧美国产在线视频| 头脑特工队2在线播放| 色嗨嗨av一区二区三区| 国精品人伦一区二区三区蜜桃| 国产一区日韩二区欧美三区| 国产又粗又猛又爽又黄的网站| 久久中文资源| 国产精品美女网站| 影音先锋在线视频| 亚洲欧美制服另类日韩| 国产精品人妻一区二区三区| 亚洲高清视频在线| 精品一区二区6| 国产aⅴ综合色| 玩弄japan白嫩少妇hd| 婷婷亚洲五月| 鲁鲁狠狠狠7777一区二区| 久久天天久久| 97超碰国产精品女人人人爽| 1024国产在线| 亚洲激情第一页| 中文字幕一区二区在线视频| 亚洲伊人色欲综合网| 最近中文字幕在线mv视频在线 | 91亚洲va在线va天堂va国| 大香伊人中文字幕精品| 夜夜嗨av色综合久久久综合网| 亚洲第一页在线观看| 欧洲国内综合视频| 日本视频www| 亚洲欧美综合色| 欧美熟妇一区二区| 国产69精品久久久久777| 欧美性猛交久久久乱大交小说| 好看的亚洲午夜视频在线| 日韩成人在线资源| 国产精品高潮呻吟久久久久| 91精品国产综合久久香蕉| 亚洲精品中文字幕| 欧美精品videofree1080p| 天天影视久久综合| 亚洲美女喷白浆| 人妻一区二区三区| 6080日韩午夜伦伦午夜伦| 午夜精品免费观看| 午夜激情一区二区三区| 波多野结衣亚洲色图| 国产精品久久看| www.中文字幕av| 99久久免费精品高清特色大片| 国产永久免费网站| 人妖欧美一区二区| av视屏在线播放| 久久国产高清| aⅴ在线免费观看| 99视频精品| 青青草精品视频在线| 欧美国产日本| 97精品国产97久久久久久粉红| 久久中文字幕av一区二区不卡| 欧美日韩无遮挡| 日韩一级电影| 精品麻豆av| 久久久久久毛片免费看| 国产精品免费一区二区三区在线观看| 国产亚洲高清一区| 亚洲综合日韩中文字幕v在线| **欧美日韩在线| 成人免费午夜电影| 91成人小视频| 亚洲最大的成人网| 欧洲大片精品免费永久看nba| 96sao精品视频在线观看| 99国内精品久久久久| 成人网欧美在线视频| av在线国产精品| 91亚洲精品在线观看| 看亚洲a级一级毛片| 亚洲最大的网站| jizz久久精品永久免费| 国产嫩草一区二区三区在线观看| 欧美亚洲色图校园春色| 久久久久久精| 欧美美女一区| 91香蕉视频网址| 欧美日韩1区2区3区| 国产不卡一区二区视频| 免费久久99精品国产自在现线| 37pao成人国产永久免费视频| 欧美一级久久| 538在线视频观看| 精品一区二区三区欧美| 中文字幕在线观看视频www| 成人免费毛片高清视频| 亚洲黄色在线网站| 国产日韩欧美不卡在线| 青花影视在线观看免费高清| 亚洲欧美日韩在线不卡| 豆国产97在线 | 亚洲| 色综合夜色一区| 一起草av在线| 精品乱码亚洲一区二区不卡| 日韩av地址| 久久精品国产96久久久香蕉 | 国产不卡av在线免费观看| 日韩制服诱惑| 91av免费看| 国产成人黄色| 国产一二三四五| 久久久久国产精品一区三寸| jizz18女人| 丁香网亚洲国际| 天堂在线中文视频| 亚洲综合视频网| 最近中文字幕av| 日韩欧美成人午夜| 国产精品四虎| 午夜精品一区二区三区在线 | 欧美三级乱人伦电影| 亚洲a视频在线观看| 亚洲欧洲国产精品| 2024最新电影免费在线观看 | 成熟丰满熟妇高潮xxxxx视频| 日本中文字幕一区| 亚洲成a人无码| 国产精品色婷婷久久58| 中文字幕在线观看免费视频| 欧美久久一区二区| 青青青草网站免费视频在线观看| 欧美xxxx18性欧美| 99热播精品免费| 精品999在线观看| 欧美+日本+国产+在线a∨观看| 亚洲无吗一区二区三区| aaa国产一区| 日韩欧美123区| 日本韩国欧美一区| 日韩永久免费视频| 欧美成在线视频| 色综合一区二区日本韩国亚洲 | 欧美另类女人| 国产精品自拍视频在线| 久久美女高清视频| 日本一区二区三区免费视频| 在线不卡中文字幕播放| 国产高清在线看| 人九九综合九九宗合| 豆花视频一区二区| 日本一二三区视频在线| 久久精品国产一区二区三区免费看| 人妻熟女aⅴ一区二区三区汇编| 亚洲另类在线一区| 亚洲专区在线播放| 中文字幕日韩欧美在线视频| a欧美人片人妖| 精品视频在线观看| 亚洲精品一级| 亚洲高清无码久久| 亚洲成a人片在线观看中文| 99热这里只有精品9| 久久精品亚洲一区| 亚洲ww精品| 亚洲一区二区三区欧美| 日韩中文字幕亚洲一区二区va在线| 免费黄色在线视频| 欧美色视频日本高清在线观看| 欧美一区二区三区激情| 欧美精品久久久久久久免费观看| 日本成人精品| 亚洲天堂第一区| 国产成人av电影在线| 精国产品一区二区三区a片| 日韩欧美一区在线观看| 99热国产在线中文| 岛国一区二区三区高清视频| 黄色一区二区三区四区| 亚洲av成人精品一区二区三区| 亚洲一区二区视频| 三级视频在线看| 欧美野外猛男的大粗鳮| 免费久久精品| 99热这里只有精品在线播放| 国产精品久久久久久久久果冻传媒 | 国产一区欧美日韩| 青青草成人免费| 精品国产乱码久久久久久久久| 91禁在线看| 日本精品一区二区| 麻豆国产欧美一区二区三区| 日本一级片免费| 精品国产乱码久久久久久免费| 色老头在线一区二区三区| 欧美重口乱码一区二区| 美女网站一区二区| www青青草原| 亚洲精品99久久久久| 国产精品迅雷| 五月天av影院| 成人av一区二区三区| 日韩精品一区二区亚洲av观看| 北条麻妃一区二区三区中文字幕| 久久久91麻豆精品国产一区| 岛国大片在线播放 | 黑鬼狂亚洲人videos| 日韩欧美精品在线视频| 三级在线看中文字幕完整版| 神马影院一区二区| 国产成人精品综合在线观看| 在线观看中文字幕视频| 日韩一区二区久久久| swag国产精品一区二区| 免费无码国产v片在线观看| 国产精品网友自拍| 欧美特黄一级视频| 国产精品精品一区二区三区午夜版 | 午夜先锋成人动漫在线| 色一情一区二区三区| 亚洲成a人在线观看| eeuss影院在线播放| 99re视频在线播放| 奇米影视7777精品一区二区| 久久精品这里有| 中文字幕日韩在线观看| 欧美激情极品| 亚洲第一成肉网| 91福利视频久久久久| 啦啦啦中文在线观看日本| 性刺激综合网| 久久久久亚洲蜜桃| 亚洲欧美另类日韩| 国产欧美一区二区白浆黑人|