【问题标题】:How to enable simple CORS on nginx如何在 nginx 上启用简单的 CORS
【发布时间】:2016-09-17 00:38:09
【问题描述】:

我在笔记本电脑上安装了 Nginx。我的 Web 服务器包含使用仅托管在 localhost 上的 dash.js 播放器按需流式传输的 DASH。我只想限制本地主机中可以在该播放器中使用的 DASH 数据集。我可以将 CORS 用于我的目的吗?我尝试添加

location /{
    add_header 'Access-Control-Allow-Origin' 'http://localhost';
 }

但任何 DASH 数据集仍然可以使用托管在 localhost 上的播放器。如何在 Nginx 上启用简单的 CORS 功能?我对 CORS 的理解有误吗?

谢谢

【问题讨论】:

    标签: nginx cors mpeg-dash dash.js


    【解决方案1】:

    我只想限制本地主机中可以在该播放器中使用的 DASH 数据集。我可以将 CORS 用于我的目的吗?

    不是真的。 CORS 用于跨域获取资源。如果播放器可以原生播放 DASH(目前没有浏览器这样做),那么内容将在任何页面上播放,无论是否支持 CORS。今天 DASH 播放器在浏览器中工作的方式是通过 XHR 请求加载资源并使用媒体源扩展 API 发送数据。为此,需要 CORS 标头。

    跨域请求阻塞并不是真的要阻止对资源的访问。这是为了防止一个页面上的脚本访问属于另一个页面的资源,从而有效地模拟用户。 Access-Control-Allow-Origin 标头通过有效地表明查询的资源可以安全使用,从而使其他页面能够访问这些资源。

    如果您想真正阻止对某些内容的访问,您应该使用allow/denyhttp://nginx.org/en/docs/http/ngx_http_access_module.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-24
      • 2018-10-01
      • 2019-06-27
      • 2018-06-18
      • 1970-01-01
      • 2021-10-28
      • 1970-01-01
      • 2014-10-19
      相关资源
      最近更新 更多