如何在自托管的 maptiler 服务器中启用 CORS?

时间:2021-03-09 23:20:07

标签: openmaptiles maptiler

我想配置运行 maptiler-server 的服务器机器的 Access-Control-Allow-Origin 但找不到任何文档如何做到这一点。我还想知道是否有任何方法可以为 maptiler-serve 提供由另一个 Web 服务器生成的访问令牌以实现某种访问控制。我不希望每个人都可以访问地图服务器。我想将其限制为特定网络应用程序的用户。

1 个答案:

答案 0 :(得分:0)

我在 maptiler 的 page 上找到了解决方案。基本上,我必须安装一个确实重定向到 maptiler 服务器的反向代理。他们页面上的示例使用 Nginx 作为反向代理服务器。为了配置它以便在每个响应上添加 Access-Control-Allow-Origin 标头,我不得不用另外两行扩展示例。所以我在配置文件中的 location 块看起来像这样:

    location / {
            proxy_set_header X-Forwarded-Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $http_x_forwarded_proto;
            proxy_pass http://127.0.0.1:3650;
            proxy_hide_header 'Access-Control-Allow-Origin';
            add_header 'Access-Control-Allow-Origin' '*' always;
    }

默认配置位于此处/etc/nginx/sites-available/ 或此处/etc/nginx/conf.d/