
Мы переместили много страниц на нашем сайте на базе Domino. Используя интернет-сайты, мы добавили правила перенаправления 301 для старых URL-адресов, чтобы различные боты прекратили индексировать страницы и не понижали сайт в результатах поиска, потому что мы не справились с перемещением (404 not found не очень хорошо для SEO).
Но Domino обрабатывает правила подстановки до правил перенаправления. И согласно документации Domino, если в правиле нет подстановочного знака, он добавляет "/*" к правилу. Учитывая порядок обработки и поведение подстановочных знаков, мы столкнулись с проблемой, когда существующее правило, которое должно оставаться на месте, которое имеет общий корень старых URL, обрабатывает подстановку.
Вот старые URL-адреса:
- одежда/брюки/женская
- одежда/брюки/мужская
Вот новые URL-адреса:
- одежда/брюки/женская
- одежда/брюки/мужская
Это существующее правило замены, которое должно остаться в силе:
- одежда/
Когда "clothing/pants/womens" существовало вместе с "clothing/", правила подстановки всегда обрабатывали правило "clothing/pants/womens", даже если "clothing/" существовало. Но как только мы перемещаем старый URL на перенаправление 301, правило подстановки "clothing/" начинает выбирать старый URL и обрабатывать его. В результате пользователь оказывается не в том месте, а боты продолжают индексировать URL, потому что возвращается 200.
В документации ясно указано, что Domino добавляет "/*" к любому правилу, которое не содержит подстановочный знак. Но есть ли способ сообщить Domino, что он должен иметь точное соответствие входящему URL? Я что-то упускаю в документе конфигурации интернет-сайта или что-то еще?
Я рассматриваю некоторые варианты кодирования, но предпочел бы сохранить решение изолированным от конфигурации системы, чтобы нам не приходилось переходить в несколько мест для управления правилами обработки URL-адресов нашего сайта.
Спасибо.
решение1
Также это не прямой ответ на ваш вопрос, возможно, есть обходной путь. Начиная с Domino 9 на Windows, продукт поставляется с IBM HTTP server (IHS) в качестве опции установки. IHS — это просто IBM-форк Apache. В вашем случае вы можете использовать Apache filter rules и mod_rewrite для создания более мощных правил.
Хорошая вещь, которую стоит упомянуть: IHS идет в комплекте с вашей лицензией. Никаких дополнительных расходов.