Я создаю сайт, который имеет продукты, каждый из которых принадлежит одной или нескольким категориям, которые могут быть вложены в родительских категориях. Я хотел бы иметь благоприятные для SEO URL, которые похожи на это:
Мой вопрос: действительно ли безопасно зависеть от присутствие запаздывающей наклонной черты для дифференциации между случаями 2 и 3? Я могу всегда предполагать, что пользователь хочет индекс категории, когда запаздывающая наклонная черта обнаруживается, по сравнению со страницей определенного продукта без запаздывающей наклонной черты?
Я не волнуюсь по поводу реализации этой схемы URI; я уже сделал столько же с PHP и mod_rewrite. Я просто задаюсь вопросом, знает ли кто-либо о каких-либо возражениях на этот вид маршрутизации URL. Там кто-либо известен проблемы с разделением/добавлением браузеров, запаздывающим URL от строки поиска, или с поисковыми системами, проверяющими такой сайт? Какая-либо SEO выходит или другие камни преткновения, с которыми я, вероятно, столкнусь?
В дополнение к другим ошибкам, которые вы упомянули, пользователь может сам изменить URL-адрес (введя продукт или категорию) и добавить / удалить завершающий " / ".
Чтобы решить вашу проблему, почему бы не создать специальную подкатегорию « все » и вместо «mysite.com/category/product» использовать «mysite.com/category/» all / product "?
Никогда не предполагайте, что пользователь будет делать что-либо, кроме худшего сценария, в чем-либо, связанном с URL.
, если вы не готовы выполнять переадресацию в своем коде, предположите, что у вас есть равные шансы, что URI оканчивается косой чертой или без косой черты. Единственный способ убедиться, что ваш код является надежным и, следовательно, вам не придется беспокоиться о подобных проблемах.
Мне кажется очень неестественным, что http://product/
и http://product
представляют два совершенно разных ресурса. Это запутывает и делает ваши URL менее взламываемыми, поскольку трудно определить, когда должен присутствовать или отсутствовать косой слэш в конце.
Также в RFC 3986, Унифицированный идентификатор ресурса (URI): Generic Syntax, есть заметка о Protocol-Based Normalization в главе 6.2.4, где говорится об этой конкретной ситуации в отношении нечеловеческих посетителей вашего сайта, таких как поисковые системы и веб-пауки:
Значительные усилия по снижению частоты ложноотрицательных ответов являются часто экономически выгодны для веб-пауков. Поэтому они применяют еще более агрессивные методы сравнения URI. Например, если они наблюдают, что URI, такой как
http://example.com/data
перенаправляет на URI, отличающийся только косой чертой
http://example.com/data/
то в будущем они, вероятно, будут считать их эквивалентными. (...)
Один из способов дифференциации - убедиться, что страницы продуктов имеют расширение, а страницы категорий или подкатегорий - нет. То есть:
Это однозначно.