Об информационных технологиях, здоровье и фитнесе

Ошибка SSL connect error при работе с PayPal IPN

26 июня

ПэйПал недавно внес изменения в свои сервисы, из-за чего часть IPN-слушателей (Listeners) могли не работать.

Вот пример кода моего IPN-listener:

$uri = 'https://'.$this->getPaypalHost().'/cgi-bin/webscr';
$this->post_uri = $uri;
$ch = curl_init();

if ($this->verify_ssl) {
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
    curl_setopt($ch, CURLOPT_CAINFO, dirname(dirname(__FILE__)) . '/cert/api_cert_chain.crt');
}

curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($ch, CURLOPT_URL, $uri);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $encoded_data);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, $this->follow_location);
curl_setopt($ch, CURLOPT_TIMEOUT, $this->timeout);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, true);

$this->response = curl_exec($ch);
$this->response_status = strval(curl_getinfo($ch, CURLINFO_HTTP_CODE));

Однако при проверке IPN-запроса к Пэйпал я получал "SSL connect error".

Решение простое — необходимо обновить библиотеку curl до версии 7.34+.

Подробнее можно почитать на стэковерфлоу.

Скругленные края у таблицы в Бутстрапе

27 января

Обычный border-radius для бутстраповской таблицы не даст нужного эффекта. Края у таблицы все равно останутся без скругления.

Документация рекомендует использовать такой способ для скругления краев у таблицы:

<div class="panel panel-default">
   <table class="table table-striped">
      ....
   </table>
</div>

Yii2 на Опенсервер

8 января

При установке Yii2 на Опенсервер могут возникнуть проблемы из-за папки web.

Yii2 по-умолчанию считает папку web как document_root.

Вы можете обращаться к сайту как localyiiapp.loc/web или настроить автопоиск папки web в Openserver.

Как правильно настроить Опенсервер для работы с Юи2:

Yii2 и папка web на Openserver

Можно указать инструкцию для 1 домена, либо настроить автопоиск.

Как настроить папку public_html в Yii2

18 декабря

У новичков часто возникает проблема при выгрузке Yii2-приложения на хостинг с папкой public_html. По-умолчанию, Yii2 использует папку web для хранения index.php и статики.

Исправляется все достаточно просто. Добавляем символьную ссылку:

rm public_html && ln -s application/web public_html

Yii2 и label у hidden-поля в ActiveForm

18 декабря

Для меня было полной неожиданностью, что yii2 по-умолчанию отображает label у скрытого поля. Но спрятать его достаточно просто:

echo $form->field($model, 'user_id')->hiddenInput()->label(false);