alex_tv
Проверенные
- Сообщения
- 38
- Реакции
- 9
- Баллы
- 8,110
Так уж получилось, что на одном из форумов из за глюков сервера достаточно большое количество страниц форума выпали из индекса поисковика.
Стал я копать, читать доки, и наткнулся на рекомендации в случае проблем слать заголовок retry-after с неким временем, через которое стоит повторить заход на страницу.
А форум в случае проблем (например отвалился mysql, тоже знаете ли бывает...) отвечает 500й ошибкой.
Решил что не лишне добавить такой хиадер....
Проще всего это решается таким патчем
Лучше бы было добиться такого же средствами nginx-a но я что-то не нашел решения сразу.
Может у кого есть идеи, как это сделать. Через nginx можно решить и проблему глюков вроде отвала и php-fpm, и кеша, а не только базы...
(через включение proxy_ / fastcgi_intercept_errors и статическую страницу ошибки не стал делать, хочу видеть живые ошибки)
И вообще, хотелось бы услышать мнение сообщества по поводу этого метода уменьшения последствий сбоев для поисковой выдачи.
Стал я копать, читать доки, и наткнулся на рекомендации в случае проблем слать заголовок retry-after с неким временем, через которое стоит повторить заход на страницу.
У Вас недостаточно прав для просмотра ссылок.
Вход или Регистрация
Чтобы минимизировать нагрузки на стороне сервера и на стороне клиента, вызывающие ошибку 503, следуйте этим рекомендациям:
Используйте HTTP-заголовок retry-after, который определяет, когда можно отправлять следующий запрос. Укажите в заголовке примерную дату или срок.
А форум в случае проблем (например отвалился mysql, тоже знаете ли бывает...) отвечает 500й ошибкой.
Решил что не лишне добавить такой хиадер....
Проще всего это решается таким патчем
Bash:
--- ./src/XF/Error.php.orig 2022-07-21 10:05:12.006060860 +0300
+++ ./src/XF/Error.php 2022-07-21 10:05:41.992145582 +0300
@@ -365,6 +365,7 @@
}
@header('Content-Type: text/html; charset=utf-8', true, 500);
+ @header('Retry-After: 10800');
if ($upgradePending && !$ignorePendingUpgrade)
{
Лучше бы было добиться такого же средствами nginx-a но я что-то не нашел решения сразу.
Может у кого есть идеи, как это сделать. Через nginx можно решить и проблему глюков вроде отвала и php-fpm, и кеша, а не только базы...
(через включение proxy_ / fastcgi_intercept_errors и статическую страницу ошибки не стал делать, хочу видеть живые ошибки)
И вообще, хотелось бы услышать мнение сообщества по поводу этого метода уменьшения последствий сбоев для поисковой выдачи.