0

我在使用 Symfony Mercure\HubInterface 和“纯”PHP 示例向基于 Caddy 的 Mercure Hub 发送更新时遇到问题。

尝试发布更新时(遵循官方 Symfony/Mercure 教程),我收到错误“无法发送更新”,并带有 TransportException:

“SSL 证书问题:无法获取“https://localhost/.well-known/mercure”的本地颁发者证书。

尝试使用“纯”PHP 示例发布时: https ://github.com/dunglas/mercure/blob/main/examples/publish/php.php

我得到错误:

“警告:file_get_contents(https://localhost/.well-known/mercure):无法打开流:第 13 行 /"path"/test.php 中的操作失败”

当我在终端中运行 CURL 示例(https://mercure.rocks/docs/getting-started )时,一切正常:

curl -d 'topic=https://example.com/books/1' -d 'data={"foo": "updated value"}' -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJtZXJjdXJlIjp7InB1Ymxpc2giOlsiKiJdLCJzdWJzY3JpYmUiOlsiaHR0cHM6Ly9leGFtcGxlLmNvbS9teS1wcml2YXRlLXRvcGljIiwie3NjaGVtZX06Ly97K2hvc3R9L2RlbW8vYm9va3Mve2lkfS5qc29ubGQiLCIvLndlbGwta25vd24vbWVyY3VyZS9zdWJzY3JpcHRpb25zey90b3BpY317L3N1YnNjcmliZXJ9Il0sInBheWxvYWQiOnsidXNlciI6Imh0dHBzOi8vZXhhbXBsZS5jb20vdXNlcnMvZHVuZ2xhcyIsInJlbW90ZUFkZHIiOiIxMjcuMC4wLjEifX19.z5YrkHwtkz3O_nOnhC_FP7_bmeISe3eykAkGbAl5K7c' -X POST https://localhost/.well-known/mercure

有谁知道是什么导致了这个问题以及如何解决它?

我在 MacBook Pro M1 上使用 Symfony 6(运行 symfonyCLI 本地开发服务器)和 Mercure Hub 二进制文件,使用以下命令在开发模式下运行它:

MERCURE_PUBLISHER_JWT_KEY='!ChangeMe!' \
MERCURE_SUBSCRIBER_JWT_KEY='!ChangeMe!' \
./mercure run -config Caddyfile.dev

我试过用 --no-tls 运行 symfonyCLI 服务器,但也没有用。

4

1 回答 1

0

尝试添加framework.yaml

framework:
      http_client:
        default_options:
            verify_peer: false
于 2022-02-14T15:18:49.883 回答