У нас есть странная проблема, когда инструменты Google для веб-мастеров предупреждают нас о некоторых довольно странных URL-адресах, которые он пытается найти. Мы понятия не имеем, где они создаются, и хотели бы понять, как они были созданы. Они имеют форму:
http://test.xyz/(F(pC3Rt9u0AmQepAH-uY341LtzYEKrdkOOEgB9nDyfdDB6X9uL__MmT7S-euwfO_yPKKz8gdhnBhv8v1aGkuRj6G61sSaQ7mo1F8-PI32-pZxh9UJjogZk9Shvp7jdTaFLGHLEEw0_TtMNfvgoNMg6iQhOenxOisfvYc0BfbtxM53ksFvR0))/funk-radio
Обычно это принимает форму:
http://test.xyz/funk-radio
но asp.net MVC, похоже, имеет дело с мусором (игнорируя его?), И кажется, что (первый) запрос правильно маршрутизируется. На самом деле кажется, что все маршруты работают правильно, когда этот мусор добавляется. Например:
http://test.xyz/some/other/page
одинаково доступен через:
http://test.xyz/(F(pC3Rt9u0AmQepAH-uY341LtzYEKrdkOOEgB9nDyfdDB6X9uL__MmT7S-euwfO_yPKKz8gdhnBhv8v1aGkuRj6G61sSaQ7mo1F8-PI32-pZxh9UJjogZk9Shvp7jdTaFLGHLEEw0_TtMNfvgoNMg6iQhOenxOisfvYc0BfbtxM53ksFvR0))/some/other/page
Для меня это означает, что мусор имеет какое-то особое значение. Может ли кто-нибудь просветить меня о том, что здесь происходит. Эти маршруты не должны совпадать, но они явно совпадают. Что происходит?
EDIT
Мы не используем безударную аутентификацию. Вот соответствующая часть web.config
:
<authentication mode="Forms">
<forms loginUrl="~/Account/LogOn" defaultUrl="~" slidingExpiration="true"
timeout="10080"/>
</authentication>
Интересно, если я подключусь к сайту со стандартным user-agent:
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:5.0) Gecko/20100101 Firefox/5.0
,
с использованием одного из этих URL, заполненных мусором, тогда запрос будет выполнен.
Если, с другой стороны, я подключаюсь с помощью googlebot UA
Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
Я получаю ответ 400.