iframe嵌套頁面以及風險

iframe能夠幫助咱們在一個網頁中嵌套另外一個網頁(好比:jquery項目中嵌套react頁面),它的用法咱們以實際例子說明:html

在本地寫了一個index.html,使用http-server啓動服務:react

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  <iframe src="http://47.111.228.207:8080/#/pageA" frameborder="0" width="100%" height="1000" scrolling="no"></iframe>
</body>
</html>

在index.html中咱們嵌套了一個iframe,指向我以前部署在服務器上的react頁面(http://47.111.228.207:8080/#/pageA)
image.pngjquery

如今瀏覽器打開http://localhost:8080/
image.pngapache

能夠看到已經成功的將react頁面嵌套進去了。瀏覽器

可是,問題也出來了,http://47.111.228.207:8080/#/pageA這個頁面能夠被任意的劫持使用,若是被釣魚網站使用,植入一些小廣告或者其餘的,那麼這些風險都會影響咱們網站的性能以及安全性。tomcat

那麼,如何去規避這些風險呢?安全

常見方式是在apache 或者 tomcat服務器上配置X-Frame-Options響應頭服務器

X-Frame-Options
是爲了減小點擊劫持(Clickjacking)而引入的一個響應頭,這個響應頭支持三種配置:性能

  • DENY:不容許被任何頁面嵌入;
  • SAMEORIGIN:不容許被本域之外的頁面嵌入;
  • ALLOW-FROM uri:不容許被指定的域名之外的頁面嵌入(Chrome現階段不支持);

咱們來試試如何在tomcat配置響應頭:網站

參考:
https://www.pianshen.com/arti...
https://www.cnblogs.com/wdnnc...
https://developer.mozilla.org...

相關文章
相關標籤/搜索