当向具有无效SSL证书( Cloudflare必须重新颁发证书)的服务器发出POST请求时,Artax会返回以下错误:
routines:SSL3_GET_SERVER_CERTIFICATE:certificate操作失败,代码1。OpenSSL错误消息:错误:14090086: SSL OpenSSL验证失败
我试着用
$client->setOption('tlsOptions', [
'verify_peer' => FALSE,
]);和
$request->setOption('tlsOptions', [
'verify_peer' => FALSE,
]);但是,在这两种情况下,都会引发错误。
有人能说明正确的方法,以禁用与Artax同行验证吗?
更新
我都试过了:
$client->setAllOptions([
'tlsOptions' => [
'verify_peer' => FALSE,
'allow_self_signed' => TRUE,
],
]);和
$client->setOption('tlsOptions', [
'verify_peer' => FALSE,
'allow_self_signed' => TRUE,
]);两人都给了我400的答复(不好的要求)。
[status:Artax\Response:private] => 400
[reason:Artax\Response:private] => Bad Request
[protocol:Artax\Message:private] => 1.1
[headers:Artax\Message:private] => Array
(
[Date] => Array
(
[0] => Mon, 19 May 2014 09:50:19 GMT
)
[Server] => Array
(
[0] => Apache/2.4.9 (Ubuntu)
)
[Content-Length] => Array
(
[0] => 303
)
[Connection] => Array
(
[0] => close
)
[Content-Type] => Array
(
[0] => text/html; charset=iso-8859-1
)
)
[headerCaseMap:Artax\Message:private] => Array
(
[DATE] => Date
[SERVER] => Server
[CONTENT-LENGTH] => Content-Length
[CONNECTION] => Connection
[CONTENT-TYPE] => Content-Type
)发布于 2014-05-19 08:07:14
也许允许自我签名会有效果:
$client->setOption('tlsOptions', [
'verify_peer' => FALSE,
'allow_self_signed' => TRUE,
]);发布于 2015-09-13 13:59:49
对于当前的master分支,以下内容将绕过验证:
$client->setOption(Amp\Artax\Client::OP_CRYPTO, [
"verify_peer" => false,
"verify_peer_name" => false
]);https://stackoverflow.com/questions/23732447
复制相似问题