wordpress定时发布失败!站点健康处提示cURL 错误 35

cURL error 35当客户端和服务器在 SSL/TLS 握手期间无法就安全协议达成一致时,就会出现此特定消息SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version。在 2026 年,这种情况最常见的原因是客户端(您的服务器或本地环境)尝试使用过时的协议,例如 TLS 1.0 或 1.1,而目标服务器需要较新的 TLS 1.2 或 1.3。
核心原因

  • **OpenSSL/cURL 版本过旧:**您的系统 OpenSSL 或 cURL 版本过旧,无法支持现代 TLS 协议(TLS 1.2+)。
  • **协议不匹配:**目标服务器出于安全原因已禁用较旧的、不安全的协议,但您的客户端仍在尝试使用这些协议进行连接。
  • **Cloudflare/代理设置:**如果您使用 Cloudflare,您的"最低 TLS 版本"可能设置得高于您的客户端支持的版本。

如何修复
1. 更新系统软件包
将操作系统中的 cURL 和 OpenSSL 库更新到最新版本。

  • Ubuntu/Debian:
    sudo apt update && sudo apt upgrade curl openssl -y
  • CentOS/RHEL:
    sudo yum update curl openssl -y
  • macOS(Homebrew):
    brew upgrade curl

2. 更新 PHP 配置(如果使用 WordPress/PHP)
如果错误出现在 PHP 应用程序(例如 WordPress)中,请确保 PHP 使用的是更新后的系统库。

  • 请检查您的phpinfo()OpenSSL 版本。版本应至少为1.0.2或更高(理想情况下为 1.1.1+ 或 3.0+)。
  • 更新系统库后,请重启您的 Web 服务器(Apache/Nginx/PHP-FPM)以使更改生效。

3. 在代码中强制使用现代 TLS。
如果您有权访问发出请求的代码,则可以显式强制使用更新的协议:
php

复制代码
// Example for PHP cURL`
curl_setopt($ch, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1_2); 
`

谨慎使用代码。
注意:CURL_SSLVERSION_DEFAULT通常最好使用,因为它允许协商尽可能最高的版本。
4. 调整 Cloudflare 设置
如果您的网站使用了 Cloudflare 服务,并且您在处理"Loopback"请求(网站自身连接)时看到以下情况:

  1. 登录Cloudflare 控制面板。
  2. 导航至SSL/TLS >边缘证书
  3. 检查最低 TLS 版本。如果设置为 1.2 或 1.3,请确保服务器的 cURL 支持该版本,或者暂时将其降低到 1.0(不建议长期这样做以确保安全)进行测试。


5. 更新 CA 证书
有时握手失败是因为系统无法验证服务器的证书包。

  • Ubuntu/Debian: sudo apt install --reinstall ca-certificates
  • Windows(XAMPP/WAMP): 下载最新的cacert.pem 文件并更新其curl.cainfo
相关推荐
WordPress学习笔记2 天前
WordPress主题之家
wordpress
WordPress学习笔记2 天前
WordPress多语种独立站 打造全球化外贸网站
wordpress
A小辣椒3 天前
WordPress如何隐藏后台登陆网址
安全·wordpress
WordPress学习笔记3 天前
2026正版可商用wordpress主题推荐
wordpress
WordPress学习笔记3 天前
wordpress后台更新插件时出现“链接信息”提示
wordpress
星零岁GZY5 天前
2026年 WordPress 极速优化指南:从服务器底层到前端缓存
服务器·性能优化·wordpress·雨云
Web极客码6 天前
解和使用WordPress中的theme.json文件
json·wordpress
WordPress学习笔记7 天前
wordpress免费主题网站推荐
wordpress
眠りたいです7 天前
docker-compose:使用docker-compose对多容器应用进行管理并进行wordpress简单站点的搭建
运维·nginx·docker·容器·wordpress·busybox