Строгая маршрутизация в Drupal 6,7

Что уж там говорить, Drupal грешит нестрогой машрутизацией. К примеру, вы создаёте маршрут /mypage, то Drupal направит к обработчику все запросы вида /mypage/subpage и /mypage/subpage/subpage2 и т.д.

Вы можете обратиться, к примеру, к публикации /node/100 также и по адресам /node/100/abaracadabra и т.п. По любому из бесчисленного числа адресов!

В этом нет ошибки Drupal, он так устроен (ситуация изменилась в 8й версии). Все последующие части URL интерпретируются как дополнительные параметры.

Это не страшно в плане SEO, т.к. можно в заголовках прописать —

настроить  карту сайта, да и поисковые машины будет склеивать такие дубли. Тем не менее ссылки по «неверным» адресам на ваш сайт могут постепенно накапливаться по разным причинам, и роботы их будут прилежно посещать.

Правильно в таких случаях показывать страницу с кодом 404.

Вся необходимая информация для анализа — избыточен ли URL или нет — может быть взята из таблицы menu_router. Проверку можно повесить на hook_init.

Пример писался для 7й версии. Мне кажется не очень сложно модифицировать и для 6ки. Смысл в том, чтобы строго проверить список известных маршрутов.

Это не всегда подходит для кастомных модулей, но частные случаи можно отсечь, добавив условия к

Что касается модулей из ядра, где все маршруты корректно внесены в реестр через hook_menu, тут никаких осечек не происходит.

Мало букафф? Читайте есчо !

Не появляется форма переиндексации на странице /admin/config/search/search-api/index/

Июль 25, 2024 г.

Если ваш view базируется на search API источнике данных, то важно, чтобы данные были проиндексированы. Но иногда форма переиндексации отсутствует на странице ...

Читать

Образец № 7. Заголовок уровня 3.

Август 2, 2015 г.

Для продолжения, стоит ознакомиться с экпериментом. Задачей данного образца, является демонстрация поведения ранжирования статьи при усилении ключа тегом h3. Хорошо структурированные документы более удобны для восприятия, потому тематические подзаголовки ...

Читать

Результаты эксперимента. Продолжение. Яндекс.

Сентябрь 18, 2015 г.

Продолжаю смотреть и анализировать результаты эксперимента. В прошлых двух статьях (Часть1, Часть2) я смотрел на результаты в Google. Сегодня посмотрим, ...

Читать

node_save в hook_node_insert

Апрель 13, 2021 г.

Рассмотрим технику того, как выполнить node_save во время hook_node_insert. Проблема в том, что во время данного хука мы еще находимся в транзакции и выполнить сохранение ноды прямо тут коде функции - не получится. Т.е. следующий код работать не ...

Читать
 

Комментарии к «Строгая маршрутизация в Drupal 6,7»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: