• jenkins无法嵌套进去ifrome 的问题解决


    jenkins解决跨域访问的问题

    前言

    为了方便统一管理,需要将jenkins集成到测试平台,放在一个工具入口中,例如:


     
    -w144

    实现

    这里使用iframe直接嵌入jenkins

    iframe(name='jenkins', width='100%', height=15000, frameborder=0, src='http://jenkins.ktvme.com')
    

    问题

    如果只是简单的嵌入会出现以下问题:

    Refused to display 'http://jenkins.ktvme.com/' in a frame because it set 'X-Frame-Options' to 'SAMEORIGIN'.
    

    原因分析:X-Frame-Options惹得祸

    X-Frame-Options HTTP 响应头是用来给浏览器指示允许一个页面可否在 <frame>, <iframe> 或者 <object> 中展现的标记。网站可以使用此功能,来确保自己网站的内容没有被嵌到别人的网站中去,也从而避免了点击劫持 (clickjacking) 的攻击。

    使用 X-Frame-OptionsEDIT
    X-Frame-Options 有三个值:

    DENY
    表示该页面不允许在 frame 中展示,即便是在相同域名的页面中嵌套也不允许。
    SAMEORIGIN
    表示该页面可以在相同域名页面的 frame 中展示。
    ALLOW-FROM uri
    表示该页面可以在指定来源的 frame 中展示。
    换一句话说,如果设置为 DENY,不光在别人的网站 frame 嵌入时会无法加载,在同域名页面中同样会无法加载。另一方面,如果设置为 SAMEORIGIN,那么页面就可以在同域名页面的 frame 中嵌套。

    解决方案

    在jenkins中安装:XFrame Filter Plugin 然后将其设置成ALLOW-FROM uri,默认是SAMEORGIN


     

    插件下载地址: https://plugins.jenkins.io/xframe-filter-plugin/

    链接:https://www.jianshu.com/p/b79254e3b015

  • 相关阅读:
    六个月的实习
    cookbook学习第二弹
    cookbook学习第一弹
    maketrans translate
    Python strip函数用法小结
    【翻译】How To Tango With Django 1.5.4 第一章
    os相关方法总结
    python基础(一)
    bash快捷键
    Linux基本命令
  • 原文地址:https://www.cnblogs.com/kaibindirver/p/13070011.html
Copyright © 2020-2023  润新知