我的Django网站使用Nginx托管在digitalocean ubuntu 16.04中。
我在这里设置了digitalocean CORS配置https://www.digitalocean.com/docs/spaces/how-to/cors/我在“origin”中添加了我的域名,检查了“Allowed Methods”中的所有选项,我唯一没有做的就是在“alowd headers”中添加头,因为我不知道要添加什么。
当我使用digitalocean Spaces(一种基于Amazon S3并与之非常相似的服务)作为静态和媒体文件存储时。请求的资源上不存在“Access Control Allow Origin”标头错误:
访问字体地址'https://nyc3.digitaloceanspaces.com/kjmgstorage/kjmgstorage/fonts/fontawesome-webfont.woff2?v=4.7.0“起源”https://kjmg.co'已被CORS策略阻止:请求的资源上不存在'Access Control Allow Origin'标头。起源'https://kjmg.co因此,不允许访问。
我试图使用django-cors-Headers,但我收到:
502坏网关nginx/1.10.3(Ubuntu)
所以我不得不卸载它。
有朋友知道吗?非常感谢你!
您需要在Digital ocean设置CORS,而不是在您的网站上。检查这个:数码海洋。com/docs/spaces/how-to/cors
这是一个老问题,尽管如此,我还是遇到了这个问题,并花了一些时间来解决,因为DOs文档不完整。我的2美分是。。。按照DOs文档中的说明配置CORS(https://www.digitalocean.com/docs/spaces/how-to/configure-cors/).一旦完成了。。。转到“空间设置”并清除缓存。这是文档中缺少的步骤。在清除缓存之前,配置不会生效。
这是一个很老的问题。但是回答它可能会有人发现它很有用。
我也面临过同样的问题。首先,如果您使用DO(Digital Ocean)空间,您需要将CORS标头选项设置为DO空间,而不是在django应用程序中。
您需要打开DO空间的设置并转到CORS配置
。
然后在允许的标题部分添加Access-Control-允许-起源
然后将Access Control Max Age
值设为600秒,这意味着浏览器将缓存CORS头信息10分钟。
最后不要忘记清除缓存从DO spcae的边缘服务器,如果你正在使用CDN点击清除缓存
按钮中的设置,否则你会像我一样浪费很多时间。