Http 請求頭 響應體 詳解


 

Referrer Policy 是什么?

 我們知道,在頁面引入圖片、JS 等資源,或者從一個頁面跳到另一個頁面,都會產生新的 HTTP 請求,

瀏覽器一般都會給這些請求頭加上表示來源的 Referrer 字段。Referrer 在分析用戶來源時很有用,有着廣泛的使用

屬性介紹:

新的 Referrer Policy 規定了五種 Referrer 策略:No Referrer、No Referrer When Downgrade、Origin Only、Origin When Cross-origin、和 Unsafe URL。

之前就存在的三種策略:never、default 和 always,在新標准里換了個名稱。他們的對應關系如下:

策略名稱 屬性值(新) 屬性值(舊)
No Referrer no-referrer never
No Referrer When Downgrade no-referrer-when-downgrade default
Origin Only origin -
Origin When Cross-origin origin-when-crossorigin -
Unsafe URL unsafe-url always
  • No Referrer :
  • 任何情況下都不發送 Referrer 信息;
  • No Referrer When Downgrade :
  • 僅當發生協議降級(如 HTTPS 頁面引入 HTTP 資源,從 HTTPS 頁面跳到 HTTP 等)時不發送 Referrer 信息。
  • 這個規則是現在大部分瀏覽器默認所采用的;
  • Origin Only
  •  :發送只包含 host 部分的 Referrer。啟用這個規則,無論是否發生協議降級,
  • 無論是本站鏈接還是站外鏈接,都會發送 Referrer 信息,但是只包含協議 + host 部分(不包含具體的路徑及參數等信息);
  • Origin When Cross-origin 
  • :僅在發生跨域訪問時發送只包含 host 的 Referrer,同域下還是完整的。
  • 它與Origin Only的區別是多判斷了是否Cross-origin。需要注意的是協議、域名和端口都一致,才會被瀏覽器認為是同域;
  • Unsafe URL :
  • 無論是否發生協議降級,無論是本站鏈接還是站外鏈接,統統都發送 Referrer 信息。正如其名,這是最寬松而最不安全的策略;

使用:

知道了有哪些策略可以用,還需要了解怎么用。這里介紹指定 Referrer Policy 的三種方式:

1.CSP 響應頭

CSP(Content Security Policy),是一個跟頁面內容安全有關的規范。

在 HTTP 中通過響應頭中的Content-Security-Policy字段來告訴瀏覽器當前頁面要使用何種 CSP 策略。我之前寫過一篇Content Security Policy 介紹

可以先看看。現在 CSP 還可以通過referrer指令和五種可選的指令值,來指定 Referrer 策略,格式非常簡單:

Content-Security-Policy: referrer no-referrer|no-referrer-when-downgrade|origin|origin-when-cross-origin|unsafe-url;

 

注:根據文檔,通過 CSP 頭部設置Origin When Cross-origin策略時,指令值應該用origin-when-cross-origin,

這跟前面的表格里的origin-when-crossorigin有差異。實際上經過我的測試,Chrome 42 只支持origin-when-crossorigin,

后續會不會變還不知道,建議大家使用時,自己先測一下。

CSP 的指令和指令值之間以空格分割,多個指令之間用英文分號分割。

2. <meta> 標簽

通過<meta>標簽也可以指定 Referrer 策略,同樣很簡單:

<meta name="referrer" content="no-referrer|no-referrer-when-downgrade|origin|origin-when-crossorigin|unsafe-url">

需要注意的是,<meta>只能放在<head>...</head>之間,如果出現的位置不對會被忽略。同樣,如果沒有給它定義content屬性,或者content屬性為空,也會被忽略。如果content屬性不是合法的取值,瀏覽器會自動選擇no-referrer這種最嚴格的策略。

3. 標簽的 referrer 屬性

通過給<a>標簽增加referrer屬性也可以指定 Referrer 策略,格式如下:

<a href="http://example.com" referrer="no-referrer|origin|unsafe-url">xxx</a>

 

這種方式作用的只是這一個鏈接。並且,<a>標簽可用的 Referrer 策略只有三種:不傳、只傳 host 和都傳。

另外,這樣針對單個鏈接設置的策略優先級比 CSP 和<meta>要高。

另外再重復一遍,現階段的瀏覽器還保留了對 never、default 和 always 的支持,但是已經不推薦使用了。

可以看到,通過新的 Referrer 策略,網站所有者可以選擇更高的安全級別來保證用戶隱私不被泄露;

也可以選擇更低的安全級別來獲得一些便利,相比之前只能由瀏覽器默認策略一刀切,確實靈活了不少。

Accept

Accept是什么?

Accept代表發送端(客戶端)希望接受的數據類型

1.Accept屬於請求頭, Content-Type屬於實體頭。
Http報頭分為通用報頭,請求報頭,響應報頭和實體報頭。 請求方的http報頭結構:通用報頭
|請求報頭|實體報頭 響應方的http報頭結構:通用報頭|響應報頭|實體報頭

比如:Accept:text/xml(application/json); 
代表客戶端希望接受的數據類型是xml(json )類型 


Content-Type代表發送端(客戶端|服務器)發送的實體數據的數據類型。

比如:Content-Type:text/html(application/json) ;


代表發送端發送的數據格式是html(json)。 
二者合起來,

Accept:text/xml; 
Content-Type:text/html

即代表希望接受的數據類型是xml格式,本次請求發送的數據的數據格式是html。

如果accept指定的類型和response返回的類型不一致,會出現406,not acceptable錯誤,對應到java spring工程,就是

HttpHeaders headers = new HttpHeaders();

headers.add("Accept", MediaType.APPLICATION_JSON_UTF8_VALUE.toString());

如果head頭里加了accept,那么@RequestMapping里的produces = "*/*"或produces = "application/json"

Accept-Encoding

 

 

 

Accept-Encoding 是瀏覽器發給服務器,聲明瀏覽器支持的編碼類型的

常見的有

 

 Accept-Encoding: compress, gzip             //支持compress 和gzip類型(壓縮) Accept-Encoding:                     //默認是identity Accept-Encoding: *                     //支持所有類型  Accept-Encoding: compress;q=0.5, gzip;q=1.0       //按順序支持 gzip , compress Accept-Encoding: gzip;q=1.0, identity; q=0.5, *;q=0 // 按順序支持 gzip , identity 服務器返回的對應的類型編碼header是 content-encoding

 

 
         
服務器處理accept-encoding的規則如下所示
  1. 如果服務器可以返回定義在Accept-Encoding 中的任何一種Encoding類型, 那么處理成功(除非q的值等於0, 等於0代表不可接受)
  2. * 代表任意一種Encoding類型 (除了在Accept-Encoding中顯示定義的類型)
  3.如果有多個Encoding同時匹配, 按照q值順序排列
  4. identity總是可被接受的encoding類型(除非顯示的標記這個類型q=0) , 

如果Accept-Encoding的值是空 那么只有identity是會被接受的類型
如果Accept-Encoding中的所有類型服務器都沒發返回, 那么應該返回406錯誤給客戶端
如果request中沒有Accept-Encoding 那么服務器會假設所有的Encoding都是可以被接受的, 
如果Accept-Encoding中有identity  那么應該優先返回identity (除非有q值的定義,或者你認為另外一種類型是更有意義的)
 
         
注意:
如果服務器不支持identity 並且瀏覽器沒有發送Accept-Encoding,那么服務器應該傾向於使用HTTP1.0中的 "gzip" and "compress" ,
服務器可能按照客戶端類型 發送更適合的encoding類型
大部分HTTP1.0的客戶端無法處理q值

Cache-Control

 

Cache-Control指定了請求和響應遵循的緩存機制。好的緩存機制可以減少對網絡帶寬的占用,可以提高訪問速度,提高用戶的體驗,還可以減輕服務器的負擔。

 

Cache-Control主要有以下幾種類型:

(1) 請求Request:

[1] no-cache  ---- 不要讀取緩存中的文件,要求向WEB服務器重新請求

[2] no-store    ---- 請求和響應都禁止被緩存
[2] max-age: ---- 表示當訪問此網頁后的max-age秒內再次訪問不會去服務器請求,其功能與Expires類似,

只是Expires是根據某個特定日期值做比較。一但緩存者自身的時間不准確.則結果可能就是錯誤的,

而max-age,顯然無此問題.。Max-age的優先級也是高於Expires的。
[3] max-stale  ---- 允許讀取過期時間必須小於max-stale 值的緩存對象。 
[4] min-fresh ---- 接受其max-age生命期大於其當前時間 跟 min-fresh 值之和的緩存對象

[5] only-if-cached ---- 告知緩存者,我希望內容來自緩存,我並不關心被緩存響應,是否是新鮮的.

[6] no-transform   ---- 告知代理,不要更改媒體類型,比如jpg,被你改成png.

 

(2) 響應Response:

[1] public    ---- 數據內容皆被儲存起來,就連有密碼保護的網頁也儲存,安全性很低
[2] private    ---- 數據內容只能被儲存到私有的cache,僅對某個用戶有效,不能共享
[3] no-cache    ---- 可以緩存,但是只有在跟WEB服務器驗證了其有效后,才能返回給客戶端

[4] no-store  ---- 請求和響應都禁止被緩存

[4] max-age:   ----- 本響應包含的對象的過期時間
[5] Must-revalidate    ---- 如果緩存過期了,會再次和原來的服務器確定是否為最新數據,而不是和中間的proxy

[6] max-stale  ----  允許讀取過期時間必須小於max-stale 值的緩存對象。 

[7] proxy-revalidate  ---- 與Must-revalidate類似,區別在於:proxy-revalidate要排除掉用戶代理的緩存的。即其規則並不應用於用戶代理的本地緩存上。

[8] s-maxage  ---- 與max-age的唯一區別是,s-maxage僅僅應用於共享緩存.而不應用於用戶代理的本地緩存等針對單用戶的緩存. 另外,s-maxage的優先級要高於max-age.

[9] no-transform   ---- 告知代理,不要更改媒體類型,比如jpg,被你改成png.



Connection

 

 

HTTP持久連接允許在事務處理結束之后將TCP連接保持在打開狀態,以便為未來的HTTP請求重用現存的連接。

在事務處理結束之后仍然保持在打開狀態的TCP連接被稱為持久連接。持久連接會在不同事務之間保持打開狀態,直到客戶端或服務器決定將其關閉為止。
優點:重用已對目標服務器打開的空閑持久連接,可以避開緩慢的連接建立階段,更快速地進行數據的傳輸。
缺點:管理不當可能會積累出大量的空閑連接,耗費本地客戶端以及遠程服務器上的資源。
非持久連接會在每個事務處理結束之后關閉。

HTTP持久連接實現手段是HTTP首部添加Connection字段
  • Connection: keep-alive , 開啟HTTP持久連接,HTTP 1.1默認值
  • Connection: close , 關閉HTTP持久連接,HTTP 1.0默認值
HTTP keep-alive與TCP keep-alive區別
  • HTTP keep-alive參數為了減少TCP連接和斷開而提出的一種解決方案,HTTP持久連接即TCP長連接。
  • TCP keep-alive參數主要為探測長連接的存活狀況,即TCP保活功能。

本文將對HTTP首部Connction實踐,對比keep-alive/close兩個值在HTTP和TCP的表現情況。后端使用Spring boot+Java,前端使用HTML+CSS。

HTTP Request首部Connection

如果Client希望HTTP使用持久連接,在Request首部指定Connection: keep-alive,否則指定Connection: close

 

Origin

 

 

 

 

HTTP 協議中的 Origin Header 存在於請求中,用於指明當前請求來自於哪個站點。


Pragma

 

 pragma是http/1.1之前版本的歷史遺留字段,僅作為與http的向后兼容而定義。


Referer

 

 
         

 HTTP Referer是header的一部分,當瀏覽器向web服務器發送請求的時候,一般會帶上Referer,

告訴服務器該網頁是從哪個頁面鏈接過來的,服務器因此可以獲得一些信息用於處理。

User-Agent

 

 

 User-Agent 首部包含了一個特征字符串,用來讓網絡協議的對端來識別發起請求的用戶代理軟件的應用類型、操作系統、軟件開發商以及版本號。

 

 

 資源可支持的HTTP方法

Content-Type

 

 

 

 

Content-Type(內容類型),一般是指網頁中存在的 Content-Type,用於定義網絡文件的類型和網頁的編碼,決定瀏覽器將以什么形式、什么編碼讀取這個文件

常見的媒體格式類型如下:

text/html : HTML格式 text/plain :純文本格式 text/xml : XML格式 image/gif :gif圖片格式 image/jpeg :jpg圖片格式 image/png:png圖片格式 以application開頭的媒體格式類型: application/xhtml+xml :XHTML格式 application/xml: XML數據格式 application/atom+xml :Atom XML聚合格式 application/json: JSON數據格式 application/pdf:pdf格式 application/msword : Word文檔格式 application/octet-stream : 二進制流數據(如常見的文件下載) application/x-www-form-urlencoded : <form encType=””>中默認的encType,
form表單數據被編碼為key/value格式發送到服務器(表單默認的提交數據的格式) 另外一種常見的媒體格式是上傳文件之時使用的:
multipart/form-data : 需要在表單中進行文件上傳時,就需要使用該格式
文件擴展名    Content-Type(Mime-Type)    文件擴展名    Content-Type(Mime-Type)
.*( 二進制流,不知道下載文件類型)    application/octet-stream    .tif    image/tiff
.001    application/x-001    .301    application/x-301
.323    text/h323    .906    application/x-906
.907    drawing/907    .a11    application/x-a11
.acp    audio/x-mei-aac    .ai    application/postscript
.aif    audio/aiff    .aifc    audio/aiff
.aiff    audio/aiff    .anv    application/x-anv
.asa    text/asa    .asf    video/x-ms-asf
.asp    text/asp    .asx    video/x-ms-asf
.au    audio/basic    .avi    video/avi
.awf    application/vnd.adobe.workflow    .biz    text/xml
.bmp    application/x-bmp    .bot    application/x-bot
.c4t    application/x-c4t    .c90    application/x-c90
.cal    application/x-cals    .cat    application/vnd.ms-pki.seccat
.cdf    application/x-netcdf    .cdr    application/x-cdr
.cel    application/x-cel    .cer    application/x-x509-ca-cert
.cg4    application/x-g4    .cgm    application/x-cgm
.cit    application/x-cit    .class    java/*
.cml    text/xml    .cmp    application/x-cmp
.cmx    application/x-cmx    .cot    application/x-cot
.crl    application/pkix-crl    .crt    application/x-x509-ca-cert
.csi    application/x-csi    .css    text/css
.cut    application/x-cut    .dbf    application/x-dbf
.dbm    application/x-dbm    .dbx    application/x-dbx
.dcd    text/xml    .dcx    application/x-dcx
.der    application/x-x509-ca-cert    .dgn    application/x-dgn
.dib    application/x-dib    .dll    application/x-msdownload
.doc    application/msword    .dot    application/msword
.drw    application/x-drw    .dtd    text/xml
.dwf    Model/vnd.dwf    .dwf    application/x-dwf
.dwg    application/x-dwg    .dxb    application/x-dxb
.dxf    application/x-dxf    .edn    application/vnd.adobe.edn
.emf    application/x-emf    .eml    message/rfc822
.ent    text/xml    .epi    application/x-epi
.eps    application/x-ps    .eps    application/postscript
.etd    application/x-ebx    .exe    application/x-msdownload
.fax    image/fax    .fdf    application/vnd.fdf
.fif    application/fractals    .fo    text/xml
.frm    application/x-frm    .g4    application/x-g4
.gbr    application/x-gbr    .    application/x-
.gif    image/gif    .gl2    application/x-gl2
.gp4    application/x-gp4    .hgl    application/x-hgl
.hmr    application/x-hmr    .hpg    application/x-hpgl
.hpl    application/x-hpl    .hqx    application/mac-binhex40
.hrf    application/x-hrf    .hta    application/hta
.htc    text/x-component    .htm    text/html
.html    text/html    .htt    text/webviewhtml
.htx    text/html    .icb    application/x-icb
.ico    image/x-icon    .ico    application/x-ico
.iff    application/x-iff    .ig4    application/x-g4
.igs    application/x-igs    .iii    application/x-iphone
.img    application/x-img    .ins    application/x-internet-signup
.isp    application/x-internet-signup    .IVF    video/x-ivf
.java    java/*    .jfif    image/jpeg
.jpe    image/jpeg    .jpe    application/x-jpe
.jpeg    image/jpeg    .jpg    image/jpeg
.jpg    application/x-jpg    .js    application/x-javascript
.jsp    text/html    .la1    audio/x-liquid-file
.lar    application/x-laplayer-reg    .latex    application/x-latex
.lavs    audio/x-liquid-secure    .lbm    application/x-lbm
.lmsff    audio/x-la-lms    .ls    application/x-javascript
.ltr    application/x-ltr    .m1v    video/x-mpeg
.m2v    video/x-mpeg    .m3u    audio/mpegurl
.m4e    video/mpeg4    .mac    application/x-mac
.man    application/x-troff-man    .math    text/xml
.mdb    application/msaccess    .mdb    application/x-mdb
.mfp    application/x-shockwave-flash    .mht    message/rfc822
.mhtml    message/rfc822    .mi    application/x-mi
.mid    audio/mid    .midi    audio/mid
.mil    application/x-mil    .mml    text/xml
.mnd    audio/x-musicnet-download    .mns    audio/x-musicnet-stream
.mocha    application/x-javascript    .movie    video/x-sgi-movie
.mp1    audio/mp1    .mp2    audio/mp2
.mp2v    video/mpeg    .mp3    audio/mp3
.mp4    video/mpeg4    .mpa    video/x-mpg
.mpd    application/vnd.ms-project    .mpe    video/x-mpeg
.mpeg    video/mpg    .mpg    video/mpg
.mpga    audio/rn-mpeg    .mpp    application/vnd.ms-project
.mps    video/x-mpeg    .mpt    application/vnd.ms-project
.mpv    video/mpg    .mpv2    video/mpeg
.mpw    application/vnd.ms-project    .mpx    application/vnd.ms-project
.mtx    text/xml    .mxp    application/x-mmxp
.net    image/pnetvue    .nrf    application/x-nrf
.nws    message/rfc822    .odc    text/x-ms-odc
.out    application/x-out    .p10    application/pkcs10
.p12    application/x-pkcs12    .p7b    application/x-pkcs7-certificates
.p7c    application/pkcs7-mime    .p7m    application/pkcs7-mime
.p7r    application/x-pkcs7-certreqresp    .p7s    application/pkcs7-signature
.pc5    application/x-pc5    .pci    application/x-pci
.pcl    application/x-pcl    .pcx    application/x-pcx
.pdf    application/pdf    .pdf    application/pdf
.pdx    application/vnd.adobe.pdx    .pfx    application/x-pkcs12
.pgl    application/x-pgl    .pic    application/x-pic
.pko    application/vnd.ms-pki.pko    .pl    application/x-perl
.plg    text/html    .pls    audio/scpls
.plt    application/x-plt    .png    image/png
.png    application/x-png    .pot    application/vnd.ms-powerpoint
.ppa    application/vnd.ms-powerpoint    .ppm    application/x-ppm
.pps    application/vnd.ms-powerpoint    .ppt    application/vnd.ms-powerpoint
.ppt    application/x-ppt    .pr    application/x-pr
.prf    application/pics-rules    .prn    application/x-prn
.prt    application/x-prt    .ps    application/x-ps
.ps    application/postscript    .ptn    application/x-ptn
.pwz    application/vnd.ms-powerpoint    .r3t    text/vnd.rn-realtext3d
.ra    audio/vnd.rn-realaudio    .ram    audio/x-pn-realaudio
.ras    application/x-ras    .rat    application/rat-file
.rdf    text/xml    .rec    application/vnd.rn-recording
.red    application/x-red    .rgb    application/x-rgb
.rjs    application/vnd.rn-realsystem-rjs    .rjt    application/vnd.rn-realsystem-rjt
.rlc    application/x-rlc    .rle    application/x-rle
.rm    application/vnd.rn-realmedia    .rmf    application/vnd.adobe.rmf
.rmi    audio/mid    .rmj    application/vnd.rn-realsystem-rmj
.rmm    audio/x-pn-realaudio    .rmp    application/vnd.rn-rn_music_package
.rms    application/vnd.rn-realmedia-secure    .rmvb    application/vnd.rn-realmedia-vbr
.rmx    application/vnd.rn-realsystem-rmx    .rnx    application/vnd.rn-realplayer
.rp    image/vnd.rn-realpix    .rpm    audio/x-pn-realaudio-plugin
.rsml    application/vnd.rn-rsml    .rt    text/vnd.rn-realtext
.rtf    application/msword    .rtf    application/x-rtf
.rv    video/vnd.rn-realvideo    .sam    application/x-sam
.sat    application/x-sat    .sdp    application/sdp
.sdw    application/x-sdw    .sit    application/x-stuffit
.slb    application/x-slb    .sld    application/x-sld
.slk    drawing/x-slk    .smi    application/smil
.smil    application/smil    .smk    application/x-smk
.snd    audio/basic    .sol    text/plain
.sor    text/plain    .spc    application/x-pkcs7-certificates
.spl    application/futuresplash    .spp    text/xml
.ssm    application/streamingmedia    .sst    application/vnd.ms-pki.certstore
.stl    application/vnd.ms-pki.stl    .stm    text/html
.sty    application/x-sty    .svg    text/xml
.swf    application/x-shockwave-flash    .tdf    application/x-tdf
.tg4    application/x-tg4    .tga    application/x-tga
.tif    image/tiff    .tif    application/x-tif
.tiff    image/tiff    .tld    text/xml
.top    drawing/x-top    .torrent    application/x-bittorrent
.tsd    text/xml    .txt    text/plain
.uin    application/x-icq    .uls    text/iuls
.vcf    text/x-vcard    .vda    application/x-vda
.vdx    application/vnd.visio    .vml    text/xml
.vpg    application/x-vpeg005    .vsd    application/vnd.visio
.vsd    application/x-vsd    .vss    application/vnd.visio
.vst    application/vnd.visio    .vst    application/x-vst
.vsw    application/vnd.visio    .vsx    application/vnd.visio
.vtx    application/vnd.visio    .vxml    text/xml
.wav    audio/wav    .wax    audio/x-ms-wax
.wb1    application/x-wb1    .wb2    application/x-wb2
.wb3    application/x-wb3    .wbmp    image/vnd.wap.wbmp
.wiz    application/msword    .wk3    application/x-wk3
.wk4    application/x-wk4    .wkq    application/x-wkq
.wks    application/x-wks    .wm    video/x-ms-wm
.wma    audio/x-ms-wma    .wmd    application/x-ms-wmd
.wmf    application/x-wmf    .wml    text/vnd.wap.wml
.wmv    video/x-ms-wmv    .wmx    video/x-ms-wmx
.wmz    application/x-ms-wmz    .wp6    application/x-wp6
.wpd    application/x-wpd    .wpg    application/x-wpg
.wpl    application/vnd.ms-wpl    .wq1    application/x-wq1
.wr1    application/x-wr1    .wri    application/x-wri
.wrk    application/x-wrk    .ws    application/x-ws
.ws2    application/x-ws    .wsc    text/scriptlet
.wsdl    text/xml    .wvx    video/x-ms-wvx
.xdp    application/vnd.adobe.xdp    .xdr    text/xml
.xfd    application/vnd.adobe.xfd    .xfdf    application/vnd.adobe.xfdf
.xhtml    text/html    .xls    application/vnd.ms-excel
.xls    application/x-xls    .xlw    application/x-xlw
.xml    text/xml    .xpl    audio/scpls
.xq    text/xml    .xql    text/xml
.xquery    text/xml    .xsd    text/xml
.xsl    text/xml    .xslt    text/xml
.xwd    application/x-xwd    .x_b    application/x-x_b
.sis    application/vnd.symbian.install    .sisx    application/vnd.symbian.install
.x_t    application/x-x_t    .ipa    application/vnd.iphone
.apk    application/vnd.android.package-archive    .xap    application/x-silverlight-app
View Code

 

Server

 

WSGIServer/0.2 CPython/3.7.2 表示服務端用的語言和服務

 

 

 Vary

 

 

 Vary 是一個HTTP響應頭部信息,它決定了對於未來的一個請求頭,

應該用一個緩存的回復(response)還是向源服務器請求一個新的回復。

它被服務器用來表明在 content negotiationalgorithm(內容協商算法)中選擇一個資源代表的時候應該使用哪些頭部信息(headers)

 

X-Frame-Options

The X-Frame-Options HTTP 響應頭是用來給瀏覽器 指示允許一個頁面

可否在 <frame><iframe><embed> 或者 <object> 中展現的標記。

站點可以通過確保網站沒有被嵌入到別人的站點里面,從而避免 clickjacking 攻擊。

 

 

使用 X-Frame-Options

 

X-Frame-Options 有三個值:

 

DENY
表示該頁面不允許在 frame 中展示,即便是在相同域名的頁面中嵌套也不允許。
SAMEORIGIN
表示該頁面可以在相同域名頁面的 frame 中展示。
ALLOW-FROM uri
表示該頁面可以在指定來源的 frame 中展示。
ps:

 

換一句話說,如果設置為 DENY,不光在別人的網站 frame 嵌入時會無法加載,

在同域名頁面中同樣會無法加載。另一方面,如果設置為 SAMEORIGIN,那么頁面就可以在同域名頁面的 frame 中嵌套。

 

 

所有頭

 

6. 首部

6.1 通用首部字段

首部字段名 說明
Cache-Control 控制緩存行為
Connection 鏈接的管理
Date 報文日期
Pragma 報文指令
Trailer 報文尾部的首部
Trasfer-Encoding 指定報文主體的傳輸編碼方式
Upgrade 升級為其他協議
Via 代理服務器信息
Warning 錯誤通知

6.2 請求首部字段

首部字段名 說明
Accept 用戶代理可處理的媒體類型
Accept-Charset 優先的字符集
Accept-Encoding 優先的編碼
Accept-Langulage 優先的語言
Authorization Web認證信息
Expect 期待服務器的特定行為
From 用戶的電子郵箱地址
Host 請求資源所在的服務器
If-Match 比較實體標記
If-Modified-Since 比較資源的更新時間
If-None-Match 比較實體標記
If-Range 資源未更新時發送實體Byte的范圍請求
If-Unmodified-Since 比較資源的更新時間(和If-Modified-Since相反)
Max-Forwards 最大傳輸跳數
Proxy-Authorization 代理服務器需要客戶端認證
Range 實體字節范圍請求
Referer 請求中的URI的原始獲取方
TE 傳輸編碼的優先級
User-Agent HTTP客戶端程序的信息

6.3 響應首部字段

首部字段名 說明
Accept-Ranges 是否接受字節范圍
Age 資源的創建時間
ETag 資源的匹配信息
Location 客戶端重定向至指定的URI
Proxy-Authenticate 代理服務器對客戶端的認證信息
Retry-After 再次發送請求的時機
Server 服務器的信息
Vary 代理服務器緩存的管理信息
www-Authenticate 服務器對客戶端的認證

6.4 實體首部字段

首部字段名 說明
Allow 資源可支持的HTTP方法
Content-Encoding 實體的編碼方式
Content-Language 實體的自然語言
Content-Length 實體的內容大小(字節為單位)
Content-Location 替代對應資源的URI
Content-MD5 實體的報文摘要
Content-Range 實體的位置范圍
Content-Type 實體主體的媒體類型
Expires 實體過期時間
Last-Modified 資源的最后修改時間

 

 

請求頭字段 說明 響應頭字段
Accept 告知服務器發送何種媒體類型 Content-Type
Accept-Language 告知服務器發送何種語言 Content-Language
Accept-Charset 告知服務器發送何種字符集 Content-Type
Accept-Encoding 告知服務器采用何種壓縮方式 Content-Encoding


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM