跳转到主要内容
你行网

Main navigation

  • 首页
  • Drupal
  • 编程与开发
  • 数据库
  • 操作系统与应用
  • 服务器与运维
  • 社区
User account menu
  • 登录

面包屑

  1. 首页

drupal 9 无法显示正常更新信息发出PHP OpenSSL 要求

由 hrs, 23 五月, 2022

从版本 9.1.0 开始,Drupal 核心的更新管理器使用 HTTPS 来获取有关可用更新的信息。这意味着 Drupal 站点使用的 PHP 必须安装并正确配置 OpenSSL。如果 PHP 不支持 OpenSSL,则启用了更新管理器的站点将在其可用更新报告中看到“无法获取可用更新数据”错误消息。

网站无法发出出站 HTTPS 请求时的可用更新报告

openssl.png

如果您看到此错误,您可以采取一些步骤来使事情正常进行:

确认站点可以连接到 Internet
确认 OpenSSL 已启用
确认站点的证书文件已正确安装和配置
如果需要,将 Update Manager 配置为回退到 HTTP
1.确认网站可以连接到互联网
在担心 OpenSSL 和 HTTPS 之前,第一步是确保站点完全可以访问公共 Internet。考虑:

这是在本地服务器上运行的测试站点,还是在根本没有 Internet 连接的容器内运行的测试站点?
该站点是否位于网络代理服务器后面?如果是这样,网络和站点是否正确配置为使用该代理?
...
该站点必须完全能够访问公共 Internet,否则这些说明的其余部分将无济于事。

2. 确认 OpenSSL 已启用
首先,检查网站的 PHP 是否启用了 OpenSSL:

管理 > 报告 > 状态

点击 PHP 版本下的“更多信息”链接 (/admin/reports/status/php)

应该有一个名为“openssl”的部分,您应该看到如下内容:

OpenSSL support: enabled

如果没有,您必须查阅PHP openssl 扩展文档以了解如何在配置文件中启用此扩展。基本上,您需要取消注释或添加这样的一行:并且可能重新启动您的 Web 服务器守护进程(例如 Apache)。详细信息将根据您的托管环境而有所不同。如果您不确定,请咨询您的系统管理员或托管服务提供商。php.iniextension=php_openssl.so

3. 确认站点的证书文件已正确安装和配置
您可能会在站点的日志文件中看到如下错误之一:

SSL Certificate Problem: Unable to get local issuer certificate
SSL Certificate Problem: Verify that the CA cert is OK.
如果是这样,则意味着您的站点没有安装正确的证书颁发机构 (CA) 证书,或者 PHP 找不到正确的证书。您可以安装 cURL 本身提供的一组可信证书:

下载cacert.pem
将文件移动到受影响的计算机,例如: cacert.pem
/etc/pki/tls/cacert.pem
C:\php\extras\ssl\cacert.pem
编辑文件并更改参数,例如: php.inicurl.cainfo
curl.cainfo = "/etc/pki/tls/cacert.pem"
curl.cainfo = "C:\php\extras\ssl\cacert.pem"
请注意,在某些 PHP 配置中,您可能需要设置,而不是,以指向您下载的文件。openssl.cafilecurl.cainfocacert.pem

可能重新启动您的网络服务器(例如,Apache)以使更改生效。php.ini
有关更多信息,请参阅:

https://docs.bolt.cm/3.7/howto/curl-ca-certificates
https://curl.haxx.se/docs/sslcerts.html
https://curl.haxx.se/libcurl/c/libcurl-errors.html
https://stackoverflow.com/questions/13467648/configuring-curl-for-ssl
4. 如果需要,将 Update Manager 配置为回退到 HTTP
如果您无权更改站点的 PHP 配置,或者其他所有操作都失败了,您可以将 Drupal 的更新管理器配置为回退到使用 HTTP。不建议这样做,而且安全性较低(可能会使您面临“中间人”攻击,其中恶意站点声称是 updates.drupal.org 并为您提供虚假信息)。但是,没有任何迹象表明您的站点缺少 Drupal 核心和贡献的模块和主题的可用安全更新可能会更糟。因此,如果需要,您可以在文件中设置以下内容:settings.php

$settings['update_fetch_with_http_fallback'] = TRUE;

在这种情况下,更新管理器仍将首先尝试 HTTPS,但如果失败,它不会放弃并打印错误消息,而是使用 HTTP 再次尝试并希望获取可用的更新数据。

如果您已定义此设置,并且您尝试“手动检查”(使用您网站的可用更新报告中的链接)并且您仍然看到错误消息,请确保您的网站已连接到互联网,您的网络设置正确等。调试站点无法发出出站请求的所有可能情况超出了本文档的范围。祝你好运!

  • 登录或注册以发表评论
来源
PHP OpenSSL 要求
内容类型分类
技术文章
文章归类
drupal

文章标签

  • drupal 9

评论

文章标签

Excel
CSS
ubuntu
php
vim
五笔
VPN
Linux
command
HTML
drupal 8
drupal 7
centos
composer
Mysql
模块(module)
drush
Drupal
JavaSrcipt
apache
英语
drupal 9
nerdtree
network
果树种植
surround
drupal10
SEO
主题(theme)
二进制
更多

相关文章

  • 因权限问题导致drupal cms 无法正常安装,那么该如何解决这个问题
  • kvm虚拟机启动失败:default网络未激活
  • ubuntu 安装kvm 虚拟机
  • foreach 是 PHP 循环语句使用方法
  • implode() 函数的定义和用法
  • Drupal 11 主题制作教程
  • 检查 Composer 是否为官方源
  • 在 Drupal 中权重(Weight)是怎样排序的
  • 解决 Drupal 主题缺失问题
  • 为什么学习php 会一边学,一边忘
RSS源

友情链接 网站地图 版权信息 联系我们 网址导航 社区

Copyright © 2019 - 2021 你行网 版权所有  粤ICP备19072650号