Кажется, здесь наложены друг на друга две или три ошибки со смещением на единицу…
Как только в теме появляется 18 сообщений, в файле sitemap_recent.xml начинает отображаться URL с номером страницы https://forum.example.com/t/slug/123?page=2.
Проблема 1: Страница 2 не существует, пока в теме не будет 20 сообщений, но эта ссылка присутствует в карте сайта.
Ожидаемое поведение: ссылка с page=2 не должна появляться в карте сайта, пока в теме не станет 20 сообщений.
Проблема 2: Когда в теме 18 сообщений, переход по этой ссылке выдаёт ошибку «Эта страница не существует».
Ожидаемое поведение: ошибка обрабатывается корректно, и пользователь перенаправляется в конец темы.
Проблема 3: Когда в теме 19 сообщений, переход по этой ссылке выдаёт сообщение «Ошибка. При загрузке что-то пошло не так».
Ожидаемое поведение: ошибка обрабатывается корректно, и пользователь перенаправляется в конец темы.
Проблема 4: Когда в теме более 20 сообщений, но некоторые были удалены, и общее количество видимых сообщений стало меньше, параметр ?page=2 остаётся в карте сайта недавних тем, пока не появится одно новое сообщение, после чего он исчезает.
Ожидаемое поведение: номер страницы должен исчезнуть (или уменьшиться для более высоких страниц), отражая фактическое количество доступных страниц.
Хуже всего то, что эта некорректная ссылка также отображается в Google!
Проблема 5: при клике на эту ссылку пользователь получает ошибку.
Но в Google, по-видимому, создаётся дублированный контент.
Воспроизведение на Meta:
-
Найдите тему с 17 или 18 ответами:

-
Найдите её в
https://meta.discourse.org/sitemap_recent.xml
-
Перейдите по ссылке
-
Проверьте Google


