Почему ?_escaped_fragment= реагирует иначе, чем #!

Итак, согласно спецификациям Google для сайта с возможностью сканирования AJAX, я настроил свой сайт так, чтобы foo.com/#!bar извлекал нужный контент. Это также работает, когда вы вводите foo.com/?_escaped_fragment=bar, так как это по сути то же самое. Однако, если я захожу в Google и отрисовываю его или даже через службу предварительного просмотра Bing, только ссылка /?_escaped_fragment= возвращает предварительный просмотр нужной страницы, а другой #! ссылка просто возвращает статическую домашнюю страницу без каких-либо изменений. Теперь это вполне возможно из-за того, как я настроил свой сайт, фрагмент / URL-адрес не имеет отношения к коду PhP, просто при загрузке или изменении хэша я вижу, #! или экранированный фрагмент вызываются и преобразуются в то, что мне нужно для вызова PhP. Что идет вразрез с очевидным правильным способом сделать это. Но если /?_escaped_fragment= работает точно так, как задумано, а #! метод использует ТОЧНО тот же код, почему #! вернуть статический сайт?


person DasBeasto    schedule 12.07.2014    source источник


Ответы (1)


Насколько я понял, вы используете #! для создания разных страниц.

Но # в URL-адресе используется в HTML для получения определенного места на той же странице, поэтому, возможно, Google и Bing игнорируют эту часть URL-адреса.

person furas    schedule 12.07.2014