答案 1
您必须将 cURL 请求切换为使用 TLS 1.2,才能使用沙盒PayPal。我在同一条船上,不幸的是,没有办法绕过它。几天前,他们刚刚在沙盒环境中激活了更改。
https://devblog.paypal.com/upcoming-security-changes-notice/
答案 2
我将为此添加一些额外的信息,因为第一个答案并没有真正涵盖所有要点。
PayPal已经开始推出一些升级,但沙盒现在要求所有请求都使用 TLS 1.2,从 2016 年 6 月开始,生产系统也将需要 TLS 1.2。
为了支持这一点,您需要:
确保您的服务器具有 OpenSSL 1.0.1 或更高版本(这是添加 TLS 1.2 支持的时间)。
将显示您的版本号。openssl version
-
满足该条件后,在 PHP 代码中,可以使用以下命令强制 TLS 1.2:
SSLVERSION
curl_setopt($curl, CURLOPT_SSLVERSION, 6);
或者,如果您想要一个不那么黑客的解决方案,则可以在握手期间自动启动正确的SSL版本,其中客户端和服务器比较可用的密码以找到通用协议。您似乎使用的是 PHP + curl,因此您需要 PHP 5.5.19+ 和 curl 7.29+ 才能实现此目的。
推荐
-
相当于Java中PHP的crypt函数 我正在将我的PHP代码迁移到Google App Engine - Java。因此,我需要一个相当于Java中PHP的crypt函数,因为我已将使用crypt的注册用户的所有密码存储在我的数据库中。 编辑1:这是我用于加密密码的php
-
需要有关如何从接受语言请求标头获取首选语言的示例 我需要一个代码示例或库来解析标头并返回我的首选语言。 指出: “接受语言请求标头”字段类似于“接受”,但限制首选作为请求响应的自然语言集。语言标记在第 3.10 节中定义。
-
无法在 Java 和 PHP 之间交换使用 AES-256 加密的数据 我的问题是:我在Java中加密的东西,我可以在Java中完全解密,但PHP不能解密。我用加密的内容可以使用 解密,但不能在 Java 中解密。 我想从Java应用程序发送和接收加密数据到PHP页面,所以我
-
-
Quercus是Java环境中PHP的可行替代品吗? 对于任何偶然发现这个问题的人,他们不知道是什么 - 它是用Java完成的PHP的实现。 对于我目前正在从事的项目,我们通过cgi在servlet上提供php页面(我知道它很笨拙,但这是支持遗留代码的要求
标签