首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >内容-安全-本地资源策略

内容-安全-本地资源策略
EN

Stack Overflow用户
提问于 2021-02-06 20:48:39
回答 1查看 208关注 0票数 0

我正在尝试使用apache tomcat作为容器在本地部署一个web应用程序。我得到了一个简单的页面,在head部分如下:

代码语言:javascript
复制
<meta http-equiv="Content-Security-Policy" content="default-src 'self'">

<link rel="stylesheet" href="pure-min.css">
<link rel="stylesheet" href="styles.css">
<script src="app.js"></script>

当我试图打开safari 14上的页面时,我得到了错误

代码语言:javascript
复制
Refused to load http://localhost:8080/webapp/app.js because it does not appear in the script-src directive of the Content Security Policy.

我已经阅读了文档here,看起来'self‘足以加载我自己的资源(对于css和javascript)。我做错了什么?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2021-02-07 09:14:45

这可能是两个问题:

  1. 'self'标记不覆盖Safari中的localhost:8080 (带端口号)。但在这种情况下,你应该另外有2个CSS被阻止,而不仅仅是js。

要解决这个问题,只需在default-src指令中添加localhost:8080即可。

通过HTTP头发布默认的

  1. 您的Apache Tomcat服务器。在这种情况下,您不能使用meta标记减轻CSP,而必须修改CSP响应HTTP头。

检查是否发布了CSP HTTP标头,教程为here.

是否仅在Safari浏览器中观察到此错误?那Chrome/Firefox呢?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66077099

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档