本地 WordPress 和 MAMP wp_remote_get():cURL 错误 60:SSL 证书问题:无法获取本地颁发者证书

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

我有一个在 MAMP Pro (macos) 上本地运行的网站,当我使用

wp_remote_get()

时不断收到 cURL 错误

我搜索并尝试了多种解决方案,但似乎没有任何效果。

我的代码:

$url = site_url() . '/wp-json/wp/v2/my-cpt'; // This works just fine and shows up in the browser correctly
$response = wp_remote_get( $url ); // this outputs the cURL error: "cURL error 60: SSL certificate problem: unable to get local issuer certificate"

我有:

  1. https://curl.haxx.se/docs/caextract.html
  2. 下载最新的 CA 文件
  3. 替换了我的 MAMP OpenSSL 安装中的 cacert.pem 文件:/Applications/MAMP/Library/OpenSSL/certs/cacert.pem
  4. 打开两个相关的php.ini文件。一个位于 /Applications/MAMP/conf/php7.4.2/php.ini ,另一个位于 /Applications/MAMP/bin/php/php7.4.2/conf/php.ini
  5. 将 URL 添加到新的 cacert.pem curl.cainfo = "/Applications/MAMP/Library/OpenSSL/certs/cacert.pem" openssl.cafile = "/Applications/MAMP/Library/OpenSSL/certs/cacert.pem" openssl.capath =“/Applications/MAMP/Library/OpenSSL/certs”
  6. 我还尝试指定curl.cainfo、openssl.cafile、openssl.capath 通过 MAMP GUI:文件 > 编辑模板 > PHP(php.ini) > 7.4.2
php wordpress ssl curl mamp
2个回答
6
投票

这更多的是本地解决方法。 您可以在本地站点内禁用 SSL 验证。这可以通过将此行添加到文件中来完成

wp-includes/functions.php
/wp-content/themes/YOUR_THEME/functions.php

add_filter('https_ssl_verify', '__return_false');

0
投票

谢谢。完美运行,没有麻烦

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