Работаю на linux, делаю приложение на yii2-advanced, локальный сервер apache2.
Случайно сделал git checkout почти пустой ветки master и все наработки на ветке dev слетели.
Удалил приложение, заново сделал clone, pull, сменил ветку на dev.
Но приложение не работает, хотя ничего не менял.
HTTP ERROR 500
Как править?
Пробовал перезапускать сервер, не помогло. .htaccess-настройки те же.
Наиболее частой причиной ошибки 500 (Internal Server Error, внутренняя ошибка сервера) является неверный синтаксис файла .htaccess или наличие в нем неподдерживаемых директив. Чаще всего достаточно закомментировать директиву Options (для этого нужно поставить в начале строки решетку — #), и проблема исчезнет.
Ошибка 500 также может возникать вследствие неправильного обращения с CGI-скриптами:
CGI-скрипты должны иметь окончания строк в формате UNIX (\n), а не в формате Windows (\r\n). Для этого их надо загружать на сервер по FTP в режиме ASCII.
CGI-скрипты и папки, в которых они находятся, должны быть доступны для записи только владельцу, то есть иметь права 0755 (drwxr-xr-x).
В результате работы CGI-скрипта сформированы неправильные HTTP-заголовки ответа. В этом случае для решения проблемы полезно обратиться к error_log (его можно найти в контрольной панели в разделе «Хостинг / Статистика / Лог-файлы / Ошибки»).
Решил проблему следующим образом:
Удалил папку проекта.
С помощью composer установил чистый проект yii2-advanced
Сделал git fetch --all внутри папки чистого проекта
Сделал git reset --hard origin/master
Сделал git pull origin dev
Заново настроил подключение к базе данных (не знаю почему сбилось)
Создал заново ветку dev
Заново настроил права chmod
После этого проект снова прекрасно работает.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей