Самый простой способ подключить OpenID к своему сайту

Сегодняшний день начался с очистки комментариев от СПАМА, давно бы надо установить какой-нибудь скрипт для этой цели, но есть более интересные задачи и потому этот вопрос отодвигается всякий раз.

На других сайтах я решаю эту проблему с помощью авторизации по OpenID или с помощью Facebook. В настоящее время у пользователя достаточно аккаунтов, чтобы просить его еще раз зарегестрироваться на сайте, да и мне не нужно лишний раз заботиться о сохранности личных данных. Этот метод работает достаточно хорошо, потому что большинство спамеров не знают насколько легко можно сделать из собственного сайта OpenID-сервер

На самом деле все еще проще. Можно ничего не устанавливать на свой сайт, а прописать лишь несколько строк в заголовке каждой страницы.

Я решил сделать этот блог немного более популярным и в первую очередь проверить насколько работоспособна раскрутка с помощью комментариев в других блогах. NB Комментирую я только по делу и не занимаюсь спамом. Тем более не призываю к этому других.

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

1. Зарегестрироваться на одном из сервисов, который является OpenID-провайдером, наприме, это может быть livejournal.com или https://www.myopenid.com/

2. Связать свой сайт с созданным OpenID. Для этого надо прописать несколько строк в заголовке странице. Например, для этого сайта они выглядят так:

  1.  
  2. <link rel="openid.server" href="http://www.myopenid.com/server" />
  3. <link rel="openid.delegate" href="http://nittis.myopenid.com/" />
  4. <link rel="openid2.local_id" href="http://nittis.myopenid.com" />
  5. <link rel="openid2.provider" href="http://www.myopenid.com/server" />
  6. <meta http-equiv="X-XRDS-Location" content="http://www.myopenid.com/xrds?username=nittis.myopenid.com" />
  7.  

Если бы в качестве провайдера я выбрал livejournal.com, то изменения оказались бы совсем незначительными.

  1.  
  2. <link rel="openid.delegate" href="http://nittis.livejournal.com/" />
  3. <link rel="openid2.local_id" href="http://nittis.livejournal.com" />
  4. <link rel="openid.server" href="http://www.livejournal.com/openid/server.bml" />
  5. <link rel="openid2.provider" href="http://www.livejournal.com/openid/server.bml" />
  6. <meta http-equiv="X-XRDS-Location" content="http://nittis.livejournal.com/data/yadis" />
  7.  

Хорошая новость для SEO-оптимизаторов. Если указанный код прописать в заголовке каждой страницы, то можно будет авторизоваться любой страницей сайта, тем самым оставляя обратную ссылку не на корень сайта, а на наиболее релевантную статью

Читайте в блоге

Программная авторизация в PHPBB
Funky Cache. Работа над ошибками
TinyURL. Шаг 4. Обработка кнопки на примере формы входа

Метки: openid блог

Комментарии:

Spieler @ 07.12.2011 19:31

А как узнать, какое должно быть содержимое тега "meta http-equiv="X-XRDS-Location"" для каждого конкретного провайдера openid?

Например, data/yadis для жж - не особо очевидный урл, и прочие блогсервисы этот урл не особо светят...
Владимир Рыбаков @ 07.12.2011 21:11

Конкретно для жж достаточно зайти на страницу вида http://nittis.livejournal.com и посмотреть код страницы. Там присутствуют все пять строк, приведенные в посте, в том числе и X-XRDS-Location?

Для других сайтов должно быть аналогично, хотя утверждать это я не возьмусь. Могу посмотреть какой-то конкретный сайт, если с ним возникают проблемы.
Spieler @ 07.12.2011 21:53

Ага, спасибо!
Это я уже так, на всякий случай выясняю.

На самом деле, только что зарегился на openid.com - и правда, работает!

Так что - большое спасибо за хинт!
klim @ 23.01.2012 20:22

Спасибо!
koxa @ 02.02.2012 10:56

@Если указанный код прописать в заголовке каждой страницы, то можно будет авторизоваться любой страницей сайта, тем самым оставляя обратную ссылку не на корень сайта, а на наиболее релевантную статью@ - это хорошая новость!
klim @ 03.02.2012 00:52

Спасибо koxa! это действительно хорошая новость!
Баринов Александр @ 10.02.2013 11:59

Спасибо за статью, идея прекрасная, но — не получилось. ссылка ведёт на профиль OPENID. Уважаемый автор, нельзя ли подробнее о настройках на сайте OPENID?

Войдите на сайт, чтобы оставить комментарий