Я создаю веб-сайт, где с домашней страницы я открою какой-то другой URI на веб-сайте в лайтбокс (AJAX), и я хочу использовать состояние push5 и хеширование HTML5 как резерв для управления изменениями состояний.Как обращаться с facebook sharing/like с URL-адресами hashbang?
Теперь я хочу, чтобы URLs быть сканируются и Facebook разделяемых/симпатичный ..
Если браузер пользователя поддерживает HTML5 нажимной состояние, никаких проблем, он не может разделять URL (например: http://myserver/example
) и Facebook будет найти соответствующие метаданные OG в статическом содержимом.
Но если пользователь использует браузер HTML4, у него будет URL-адрес, например http://myserver/#!/example
. и я хочу, чтобы он мог поделиться через Facebook все равно ...
Теперь это выглядит как Facebook поддерживает метод замены _escaped_fragment_, поэтому я, хотя я бы просто перенаправить запросы от http://myserver/?_escaped_fragment_=/example
к http://myserver/example
и все должны быть счастливы ...
Так я добавил условие перезаписи на мой HTAccess:
RewriteCond %{QUERY_STRING} ^_escaped_fragment_=([^&]*)
RewriteRule .* http://%{HTTP_HOST}/%1? [R=301,L,NE]
Моя проблема заключается в том, что я не могу заставить его работать с Facebook, с Facebook пуха это, кажется, процентов, бежать все время часть URL af ter hashbang, что приводит к URL-адресам, таким как http://myserver/%2Fexample
, который приземляется на 404 :-(
Кто-нибудь знает, как обмануть Facebook, чтобы не ускользнуть от этой части URL-адреса? Могу ли я что-то сделать на стороне apache mod_rewrite?
Я также открыт для любого другого действительного AJAX просканировать/симпатичную стратегию URL;)
Пожалуйста, несколько деталей –