Коль скоро вокруг OpenID поднялся некий ажиотаж, решил к своему Регистру тоже эту штуку прикрутить. Да только никак не выходил каменный цветок, сколь не бился ничего не получалось. Ни в какую не хотел меня Livejournal узнавать по этому самому OpenID: no_identity_server, говорит, и все тут. Но, обо всем по-порядку.
Я раньше слышал, конечно, что это за OpenID такой и зачем он используется. Подумывал тоже прикрутить к этому блогу, да все никак руки не доходили. А когда доходили и начинал читать документацию то к концу второго абзаца начинал понимать «не осилю».
Но тут наткнулся на замечательную статью Симона Вилсона с обещающим названием «How to turn your blog in to an OpenID». Оказалось, все просто: заводишь себе учетную запись на каком-либо сервере OpenID и прописываешь две строчки в заголовок страницы своего блога.
Сказано сделано. Завел себе аккаунт на pip.verisignlabs.com, добавил нужные строчки в index.html:
<link rel="openid.server" href="http://pip.verisignlabs.com/server">
<link rel="openid.delegate" href="http://vladfrost.pip.verisignlabs.com/">
Ура, вроде бы все. Пошел на Livejournal тестировать. А Livejournal мне в ответ: нету, говорит, на твоей странице нужных строчек, no_identity_server и все тут. Как же, говорю, нету? Вот же они! Нет, не верит.
Ладно, думаю, может не нравится ему VerySign, давай попробуем свой сервер. Скачал и установил phpMyID, полез проверять на Livejournal та же песня. Проверил на других некоторых сайтах те же яйца, только сбоку. Никто не хочет меня узнавать.
Полез в код Регистра. Стал изучать внимательнее:
<html><head><title>Register | {$out["title"]}</title></head>
<link Rel="stylesheet" type="text/css" href="http://{$out['site']}/main.css">
<link Rel="shortcut icon" href="http://{$out['site']}/favicon.ico">
<link rel="alternate" type="application/rss+xml" title="RSS" href="http://{$out['site']}/txt/export.xml"/>
<link rel="openid.server" href="http://blog.vladfrost.ru/phpMyID/MyID.php">
<link rel="openid.delegate" href="http://blog.vladfrost.ru/phpMyID/MyID.php"> <base Href="http://{$out['site']}/"> <meta name="Keywords" content="{$out["subj"]}"> <meta name="Description" content="Register | {$out["subj"]}"> ...
Ничего не замечаете? Вот и я не замечал, пока не обнаружил закрывающий </head> сразу перед строчками с <link blah-blah>. Перенес его вниз блока и все сразу заработало. Ура!
Не знаю, осилю ли теперь авторизацию других сайтов по этому самому OpenID