Linux:Ubuntu 21.10
HTTP 服务器:Apache/2.4.48 (Ubuntu)
SSL 证书类型:通配符
SSL 证书颁发者:Sectigo Limited(即非自签名)
问题:Mediawiki 进行内部环回HTTPS调用加载其可视化 GUI 编辑器。问题(如许多谷歌搜索帖子中所述)是证书验证失败,因为 Mediawiki 正在尝试联系自身。换句话说,如果从服务 MediaWiki 的同一服务器(本地主机)发出此命令失败:
$ curl 'https://host.domain.com/rest.php/v1/page/Main_Page'
...那么可视化编辑器就会失败。确实如此。 MediaWiki 网站的其余部分在制作时工作正常HTTPS来自远程客户端。
故障详情:
$ curl 'https://host.domain.com/rest.php/v1/page/Main_Page'
curl: (60) SSL certificate problem: unable to get local issuer certificate
More details here: https://curl.se/docs/sslcerts.html
curl failed to verify the legitimacy of the server and therefore could not
establish a secure connection to it. To learn more about this situation and
how to fix it, please visit the web page mentioned above.
但证书是有效的。当我们不从本地主机进行网络调用时,它工作得很好。我还访问了错误消息中提供的 CURL 链接,但没有看到与我的情况相关的任何内容。
问题:我需要做什么才能获得卷曲发布时不要失败卷曲从本地主机调用?
答案1
curl 'https://host.domain.com/rest.php/v1/page/Main_Page'
从主机运行该命令时失败host.domain.com
?这肯定与本地系统中缺少证书颁发者的根证书有关。
请记住,curl
这里是客户端,需要能够验证从根到网络服务器的证书链。
网络服务器应配置为生成足够的链以从公共签名证书获取其自身,但您需要拥有根证书。
在 Debian 上我会尝试更新证书包
apt install ca-certificates
如果这没有帮助,我需要获取要添加的公共根证书/usr/local/share/ca-certificates
,然后运行update-ca-certificates
以重建证书数据库。 (请参阅man update-ca-certificates
获取更多详细信息。)