Запрещаем странице «404» отдавать ответ 200
Плагин для MODx, который запрещает странице «404», при прямом запросе отдавать ответ 200. Вместо этого, принудительно будем отдавать ответ 404 (Not Found).

Оглавление
Обычно на сайтах есть страница ошибки «404». На неё происходит переадресация, когда пользователь запрашивает несуществующий url. Однако если обратиться к странице 404 напрямую, то мы получим ответ 200. Некоторые SEO специалисты против такого поведения сайта, да и зачем вообще юзеру знать, что есть такая страница по такому-то url? Маленьким плагином — мы легко решим эту проблему в MODx.
Системная настройка «error_page»
Для начала укажите в системной настройке MODx error_page
идентификатор вашей страницы 404.
Создаем плагин 404notFound
После создаем плагин с кодом ниже и вешаем его на событие OnLoadWebDocument
.
<?php
switch ($modx->event->name) {
case 'OnLoadWebDocument':
if ($modx->getOption('error_page') == $modx->resource->id) {
header('HTTP/1.0 404 Not Found');
}
break;
}
В этом плагине происходит сравнение текущего идентификатора страницы, с идентификатором в системной настройке error_page
. Если они совпадают — значит это страница 404 и мы принудительно отдаем заголовок HTTP/1.0 404 Not Found
.
Время запросов: 0,1253 s
Количество запросов: 28
Источник: cache