Вопросы о скрипте пинга Яндекса

Статус
В этой теме нельзя размещать новые ответы.

dig555

Постоялец
Регистрация
22 Июн 2007
Сообщения
365
Реакции
160
Не пинайте плз нуба. Вот скрипт пинга в Яндекс. Вызов функции внизу.
PHP:
<?php
set_time_limit(0);
function ping ($url, $blogname, $blogurl)
{

$tb_send='<?xml version="1.0"?>
<methodCall>
	<methodName>weblogUpdates.ping</methodName>
	<params>
		<param>
			<value>'.$blogname.'</value>
		</param>
		<param>
			<value>'.$blogurl.'</value>
		</param>
	</params>
</methodCall>';

	$target=parse_url($url);

	$tb_sock = fsockopen($target["host"],  80);
	fputs($tb_sock, "POST " . $target["path"] . $target["query"] . " HTTP/1.1\r\n");
	fputs($tb_sock, "User-Agent: NoAgent\r\n");
	fputs($tb_sock, "Host: " . $target["host"] . "\r\n");
	fputs($tb_sock, "Content-Type: text/xml\r\n");
	fputs($tb_sock, "Content-length: " . strlen($tb_send) . "\r\n");
	fputs($tb_sock, "Connection: close\r\n\r\n");
	fputs($tb_sock, $tb_send);
	// Gather result
	while (!feof($tb_sock)) {
		$response .= fgets($tb_sock, 128);
	}
	// Close socket
	fclose($tb_sock);
	// Did the trackback ping work
	strpos($response, '<error>0</error>') ? $return = true : $return = false;
	// send result
	return $return;

}

ping ("http://ping.blogs.yandex.ru/RPC2", $TITLE, $URLPATH);
?>
Вопросы:
1).Можно ли этот скрипт использовать для пинга любой своей инфы?
Т.е. если у меня есть страница Для просмотра ссылки Войди или Зарегистрируйся, а на ней новость Bla-Bla-Bla могу ли я пинговать эту новость так: _http://host.ru/script_pinga.php?title=Bla-bla-bla&urlpath=http://site.com/post_bla_bla_bla.php
Или может title и urlpath нужно сначала пропустить через urlencode?
2).И вообще можно ли пинговать таким образом простые страницы, или можно только RSS?
3).Ещё объясните мне плз, что этот скрипт в $return отдаёт.
4). И вот такой момент. Сейчас сервис мониторинга пингов ping.blogs.yandex.ru тормозит страшно. Можно ли как-то удостовериться что пинг ушёл благополучно? А если не ушёл - то долбать Яндекс пока не уйдёт?
 
  • Заблокирован
  • #2
1) использовать можно для страниц с постами. Пинговать страницей с единственной картинкой (да еще и без альта) смысла нет;
2) можно простые страницы;
3) успешность Для просмотра ссылки Войди или Зарегистрируйся. Думаю, для яндекса смысла нет;
4) если сильно "настаивать" (пинговать) можно получить нехороший результат - один раз пинганул страничку и ладно
 
Я не согласен с предыдущим ответом и предлагаю отделить мух от котлет.

Что такое "пинг" в данной реализации и каково ее назначение?
"Пинг" - это проверка обновления информации (например, в блоге или новостной ленте), используя вебсервисы.

Зачем это ?
Это нужно делать для того, чтобы проверить, нет ли каких-то новых постов перед тем как начать их вытягивать. Вы как бы спрашиваете"- чувак, а нет ли какой-то новой информации для меня?". А сайт тебе возвращает: "- ага, подтверждаю, есть такое дело, высасывай". И вы начинаете после этого их вытягивать.

Как это работает

На самом деле это работает через XML-RPC в простонародье называемый веб-сервисом (это такая надстройка над HTTP протоколом). Для того, чтобы сайт можно было "пингануть", нужно, чтобы он поддерживал интерфейс веб-сервиса. Таким образом отвечая на вопрос: можно ли "пингануть" любой сайт, указав ему URL отвечаю - нет, любой нельзя, только тот, который поддерживает данный XML-RPC интерфейс. Чтобы ваш сайт можно было так пинговать, вам нужно также поддерживать данный интерфейс (не обязательно полностью реализовывать веб-сервис, достаточно уметь принимать POST запрос, парсить его и адекватно отвечать на него).

А теперь самое интересное, где об этом почитать:

 
  • Заблокирован
  • #4
Согласен, что пинг как таковой и трекбек не одно и то же, но не понял, в чем был неточен мой ответ. Попытаюсь его расшифровать:
1)использовать можно для страниц с постами. Пинговать страницей с единственной картинкой (да еще и без альта) смысла нет; - да, действительно, если мы хотим уведомить Яндекс о том, что появилась новая информация мы отправляем ему уведомление через XML-RPC. Уведомлять о том, что появилась новая страничка с картинкой без альта смысла все равно нет (там нечего индексировать)
2) можно простые страницы; - да, можно уведомлять Яндекс о появлении новых страниц
3) успешность трекбека. Думаю, для яндекса смысла нет; - механизм трекбек подразумевает наличие ответа об успешности обработки сообщения. Все так же думаю, что при пинговании (трекбекинг не так приятно звучит) Яндекса смысла в его анализе нет в связи с пунктом 4
4) если сильно "настаивать" (пинговать) можно получить нехороший результат - один раз пинганул страничку и ладно. - неоднократно встречал утверждения о том, что слишком часто "беспокоить" поисковики уведомлениями о новых сообщениях нельзя

P.S. В посте от 24.09.2008 все употребления слова "пинг", "пинговать" и т.д. следует считать эквивалентыми "трекбек", "отсылать трекбек" и т.д. в связи с наличием в теме фрагмента кода, который однозначно идентифицирует тип сообщения, используемый для связи с Яндексом.
 
4) слишком часто буишь долбить. постмастеры могут твой ИП в блеклист запихнуть и будешь ждать пока не разлочат или пока свой ип не сменишь. вообще щас столько разновидностей ДДОСА что щас за всем жесско заботятся.. по этому советую сделать не постоянно долбится араз в минуту в 5 минут..
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху