Архив рубрики: PHP

PHP: получить публичный ключ удаленного сервера

Задача: получить публичный ключ https ресурса

Решение:

PHP: Использование CURL с сертифкатом

Задача: Некий удаленный ресурс проверяет сертификат пользователя, при попытке получить с него данные. В наличии только стандартные сертификаты выданные LetEncrypt.

Решение:

Сертификаты необходимо сконвертировать. В наличии:

  • sert.crt — сертификат домена в PEM формате
  • sert.key — приватный ключ PEM формате

Конвертируем используя промежуточную конвертацию в формат p12:

По итогу получили файл result.pem. Далее его и будем использовать при работе с curl:

Ошибка отлова исключения в PHP 7.0+

Столкнулся с интересной ошибкой сегодня. Есть вызов функции. Есть обертка try — catch в ней, а она не срабатывает! Гуглил. Долго думал.. Оказывается в PHP 7.0 и выше, изменилось дерево наследования ошибок на:

Соответственно «всех выше теперь» — Throwable, и если хочется теперь словить «глобальную» ошибку, то блок вызывать нужно:

Установка капчи reCAPTCHA v2 на сайт без отправки формы

Технически задача выглядит так:  на клиенте пользователь нажимает галочку «Я не робот» (описание от Google), по нажатии какойто кнопки — проверяем деймтвитель но ли капча пройдена.

Html (клиент):

PHP (сервер)

SSL routines:ssl3_get_server_certificate:certificate verify failed

Эта ошибка может выходить на некоторых серверах при установце wss соединения WebSocket.

Решение:  отключаем проверку Peer