Совместное использование сеансов с 302 Redirects / IMG SRC / JSON-P и последствиями для Google SEO / Pagerank или других проблем - PullRequest
1 голос
/ 07 февраля 2011

В настоящее время я изучаю лучший способ совместного использования одного сеанса между двумя доменами (для функции общей корзины покупок / общего аккаунта). Я выбрал два из трех разных подходов:

Каждые 15 минут отправляйте одноразовый токен (сделанный из секретного и пользовательского IP / пользовательского агента) для «синхронизации сеансов», используя:

  1. тег img src

    img src = "http://domain -two.com / sessionSync.png? Token =" urlsafebase64_hash "

    • отображает пустое изображение размером 1x1 пиксель и запускает сеанс удаленного сеанса с тем же идентификатором сеанса на удаленном сервере. На самом деле png - это PHP-скрипт с некоторым действием mod_rewrite.

    • Недостатки: что делать, если изображения отключены?

  2. последовательность 302 заголовков перенаправления (почти так же, как и выше, просто отправка токена с использованием 302 вместо:

    • перенаправление на домен-2.com/sessionSync.php?token="urlsafebase64_hash"
    • затем с domain-2.com/sessionSync установите (или обновите) сеанс и перенаправьте обратно на domain-1.com, чтобы продолжить исходный запрос.

    • QuestionL Что Google думает об этом с точки зрения SEO / Pagerank ?? Будут ли у их ботов проблемы при сканировании моего сайта? Они подумают, что я пытаюсь обмануть пользователя?

    • Недостатки: 3 запроса до того, как пользователь получает загрузку страницы, которая медленнее, чем метод IMG.

    • Преимущества: почти всегда работает?
  3. используйте jsonp, чтобы сделать то же, что и выше.

    • Недостатки: не будет работать, если JavaScript отключен. Я избегаю этого варианта из-за этого.
    • Преимущества: функция обратного вызова в случае успеха может быть полезной (но не совсем в этой ситуации)

Мои вопросы:

  • Что Google подумает об использовании 302, как указано в примере 2 выше? Они меня накажут?
  • Как вы думаете, что лучше?
  • Существуют ли какие-либо соображения безопасности, связанные с любым из этих методов?
  • Не понимаю ли я что-то еще, что может вызвать проблемы?

Заранее всем спасибо за помощь!

1 Ответ

0 голосов
/ 07 февраля 2011

Просто несколько идей: Вы можете использовать подход jsonP и использовать тег <noscript> для установки режима с 302 цепями.

Вы не найдете много клиентов с ограниченными возможностями js в человеческой части ваших веб-клиентов.

Но веб-сканеры в большинстве случаев попадают в режим 302 цепочки, и, если вы заботитесь о них, вы можете реализовать некоторые проверки пользовательского агента в sessionSync, чтобы дать им конкретные инструкции. Например, дайте им 301 постоянное перенаправление. Возможно, ваши потребности в синхронизации сеансов недопустимы для веб-сканеров, может быть, вы можете перенаправить их постоянно (только в первый раз), не обрабатывая для них какую-либо конкретную синхронизацию сеансов. Ну, это зависит от вашей реализации этих 302-цепочек, но вы также можете установить что-то в сеансе сканеров, чтобы они могли сканировать домен-1 без какой-либо проверки домена-2, так как это зависит от URL, который вы генерируете на странице, что вы можете иметь что-то в сеансе, чтобы предотвратить перенаправление домена-2 при генерации URL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...