SSL-соединение Не удалось подключиться с помощью GuzzleHttp 6.3.3 для подключения с ssl-сертификатом и ключом Отказано в разрешении - PullRequest
0 голосов
/ 17 июня 2020

Я пытаюсь подключиться к сайту HTTPS, чтобы опубликовать некоторые данные. Я использую Guzzle 6.3.3. Я прочитал документацию жрать http://docs.guzzlephp.org/en/5.3/clients.html?highlight=ssl#ssl -key . Я нахмурился rnet в поисках подсказок.

class TransmitImmunizationData
{
    public function sendData($idata)
    {

        $client = new Client();

        $identifier = date('Y-m-d') .'-'. rand(999,100001);
        try {
            $r = $client->post('https://edge-ua.org:13000/phr-aphmd', [
                'debug' => true,
                'verify' => true,
                CURLOPT_SSLCERT =>  ['/etc/pki/tls/certs/viis/mape.pem', ''],
                CURLOPT_SSLKEY => '/etc/pki/tls/certs/viis/mape-Key.pem',
                'curl.options' => [
                    'CURLOPT_SSLVERSION' => 'CURL_SSLVERSION_TLSv1_2',
                ],
                'headers' => [
                    'medfx-custom-oid' => '2.16',
                    'medfx-tranaction-id' => $identifier,
                    'medfx-phr-type' => 'IMM',
                ],
                'body' => 'help'
            ]);
        } catch (Exception $e) {
            $p = 'Caught exception: '. $e->getMessage() . "\n";
            return $p;
        }

        return $r->getBody();
    }

}
  • О подключении () к порту edge-ua.org 13000 (# 0) * Попытка 3.23.14.24 ... * Не удалось подключиться к 3.23.14.24: В доступе отказано * не удалось 't connect to host at edge-uat.connectvirginia.org:13000* Закрытие соединения 0

Базовая кодировка работает. Я начал здесь.

class TransmitImmunizationData
{
    public function sendData($idata)
    {
        $client = new Client();
        $identifier = date('Y-m-d') .'-'. rand(999,100001);
        try {
            $r = $client->post('http://httpbin.org/post', [
                'headers' => [
                   'medfx-custom-oid' => '2.16',
                   'medfx-tranaction-id' => $identifier,
                   'medfx-phr-type' => 'IMM',

                ],
                'body' => 'help'
            ]);
        } catch (Exception $e) {
            $p = 'Caught exception: '. $e->getMessage() . "\n";
            return $p;
        }

        return $r->getBody();
    }

}

Я получил ответ JSON. Но когда я пытаюсь подключиться к сайту https. Я просто получаю сообщение об ошибке выше. Я добавил отладку, надеясь, что она даст мне больше информации, но это был провал. Итак, я протянул руку через rnet, чтобы узнать, есть ли наблюдающий гуру, который может поделиться со мной тем, чего не хватает.

Это не помогло

http://docs.guzzlephp.org/en/stable/request-options.html#cert

Это тоже не помогло

Перемещение ssl клиента Curl в Жрать

...