- Главная
- Блог
- Ошибки, их причины и решения
Ошибки, их причины и решения

Начиная с версии 2.0.53 в Yii framework добавили дженерики в описание некоторых классов. Это приводит к ошибкам phpstan вида: Method app\controllers\TestController::beforeAction() has parameter $action with generic class yii\base\Action but does not specify its types: T

Есть сайт на Yii framework 2 в docker и отдельный контейнер с php-cli, который запускает php yii queue/listen, слушает очередь и выполняет фоновые задачи. При выполнение docker container stop CONTAINER_NAME остановка завершается с кодом ошибки 137.

На днях обновлял сервер и после перезагрузки сервисов обнаружил, что один из контейнеров (kylemanna/openvpn) не поднялся. В логах обнаружил ошибку "ERROR: Cannot open TUN/TAP dev /dev/net/tun".

При работе с некоторыми серверами по ssh возникает ошибка. В большинстве случаев это происходит из-за превышения "таймаута бездействия". Решить эту проблему можно следующим образом.

К сожалению, новая версия iOS оказалась неидеальной и принесла некоторые баги. Например, неправильное положение курсора при вводе текста в модальной форме.

Примерно полтора месяца назад столкнулся с ошибкой при обновлении пакетов композера на vps. Сообщение выгядело примерно так:
The "https://getcomposer.org/version" file could not be downloaded: failed to
open stream: Operation timed out

На днях все-таки решился установить свеженькую Ubuntu, но столкнулся со следующей проблемой. При переходе в ждущий режим отключается экран, но компьютер по-прежнему продолжает работать. Вернуть его обратно к жизни можно только перезагрузкой. Сейчас расскажу, как это побороть.

Недавно в одном из проектов обнаружилась проблема при тестировании на PHP 7. Тесты прогоняются на PHP 5.5.x, 5.6.x, 7.0.x и hhvm-3.12.x, но проваливаются они только на PHP 7. Проблема оказалась в функции json_decode(). А теперь немного подробнее.

Сегодня решил обновить композер в системе. Все прошло гладко, но при попытке выполнения composer update в проекте появилась ошибка Illegal offset type in isset or empty. Делать rollback к предыдущей версии композера не круто, поэтому я решил отыскать другое решение.
![[FormIt] Ошибка соединения с SMTP-сервером в MODX Revolution](../../../../uploads/error.jpg)
Сегодня, после переноса одного из проектов с тестовой площадки на production, перестала работать отправка писем по SMTP через FormIt. Все, что удалось найти в логах это -
Ошибки - неотъемлемая часть разработки программного обеспечения. Это факт и с этим поделать ничего нельзя. Можно только сократить их количество использую дебаггеры, IDE и прочие средства. Ошибки появляются по разным причинам и иногда кажется, что они возникают из неоткуда и вводят в ступор.
В данном разделе своего блога я решил собрать некоторые очевидные и не очевидные ошибки, описать причины их возникновения и предложить пути решения.