Описание проблемы
После переноса сайта на osCommerce между серверами для всех страниц стала выдаваться ошибка 500, при этом сайт выглядел нормально. Т.е. в заголовке возвращается код 500 и потом нормальное содержание страницы и браузер всё показывает правильно. Обнаружился баг в тот момент, когда ajax-скрипт отказался принять ответ сервера с кодом 500 и работать не стал.В процессе поисков минимальное изменение которое нужно было внести для исправления ошибки:
Файл
includes/functions/html_output.php
строка 36
if (SEO_ENABLED == 'true')
дописал в неё "FALSE &&"
и стало
if (FALSE && SEO_ENABLED == 'true')
Через несколько часов заметили, что все ссылки на сайте изменились, так что включил SEO обратно - для отладки.
После включения ошибка 500 не вернулась, стал отдаваться обычный код 200.
Причина
Точная причина осталась непонятной. Предполагаю, что в файле seo.class.php происходит обращение к самому сайту по доменному имени, при этом пока dns-кэш не обновился - запросы уходили на старый сервер, где сайт уже был выключен.
Решение
В данном случае всё решилось просто путем ожидания.
Комментариев нет:
Отправить комментарий