API平台Admin-Docker-Container在traefik后面的HTTPS-Request的响应标头中具有HTTP链接

问题描述 投票:2回答:1

当前版本的api平台和我为docker-compose / traefik-1配置找到的示例对我不起作用。

我想出了一个可以正常运行并满足我想要的配置:没有用于所有服务的转发端口,用于traefik背后的服务的HTTP,用于traefik的HTTPS,用于服务的主机名:

到目前为止,还不错,但是还有一个问题,管理容器将一个正确的请求发送到

https://vulcain.api-platform-new.loc  

在我的设置中,第二个是

HTTP://vulcain.api-platform-new.loc:443/docs.jsonld

这似乎是因为https://vulcain.api-platform-new.loc-Request的“链接”请求标头说:

link: <http://vulcain.api-platform-new.loc:443/docs.jsonld>; rel="http://www.w3.org/ns/hydra/core#apiDocumentation"

((注意HTTP与HTTPS)

enter image description here

由于以下原因导致“出了点问题”:>

fetchJsonLd.ts:14 Mixed Content: The page at 'https://admin.api-platform-new.loc/#/' was loaded over HTTPS, but requested an insecure resource 'http://vulcain.api-platform-new.loc:443/docs.jsonld'. This request has been blocked; the content must be served over HTTPS.

我花了整整几天时间,如果有人可以告诉我,如何修复Response-Header-Link以使用httpS,我将非常高兴!

当前版本的api平台以及我为docker-compose / traefik-1配置找到的示例对我不起作用。我想出了一个可以正常运行并满足我想要的配置:没有用于...

docker docker-compose traefik api-platform.com
1个回答
0
投票

我今天遇到了同样的问题。我将Traefik用作我的主要网关服务器(与Docker一起使用),并且安装了API平台,并且该API在Vulcain Docker映像后面。似乎在标头中转发了端口443,但协议是HTTP,这导致了问题中所述的错误。我无法正确配置多层容器,因此无法始终正确检测SSL。我的解决方案是编辑前端PHP控制器,使其不信任转发的端口和协议。

© www.soinside.com 2019 - 2024. All rights reserved.