PHPでPING送信を実装する

<?php
require_once('XML/RPC.php');


	function Ping_Send($blog_title,$blog_url){
		$ping = array(
					'ping.rss.drecom.jp' => '/',
					'api.my.yahoo.co.jp' => '/RPC2',
					'blog.goo.ne.jp' => '/XMLRPC',
					'blogsearch.google.co.jp' => '/ping/RPC2',
					'rpc.technorati.com' => '/rpc/ping',
					'ping.ask.jp' => '/xmlrpc.m',
					'ping.bloggers.jp' => '/rpc/',
					'www.blogpeople.net' => '/servlet/weblogUpdates',
					'www.blogpeople.net' => '/ping'
					);
		$param = array(
					new XML_RPC_Value($blog_title, 'string'),
					new XML_RPC_Value($blog_url, 'string')
					);
		$msg = new XML_RPC_Message('weblogUpdates.ping', $param);
		foreach($ping as $pingServer => $pingPath) {
			$client = new XML_RPC_Client($pingPath, $pingServer, 80);
			$response = $client->send($msg);
			if(!$response) {
				echo "timeout : ".$pingServer."<br />";
			}elseif($response->faultCode()) {
				echo "failed : ".$pingServer."<br />";
			}else {
				echo "success!! : ".$pingServer."<br />";
			}
		}

	}

?>

参照元:http://www.high5.msn.to/blog/blog_day.php?in_sequence=2366

私の場合は後半に入っていた exit の箇所が不要だったので、削除しました。
あとは、実行する場所に

Ping_Send($blog_title,$blog_url);

として実行する。

technorati と ask のサーバへはタイムアウトが続くので、私は削除しました。

その他のping送信先のリストは、以下のサイトで紹介してくれていますので、参考にされてみてはどうでしょうか。

http://seoxseo.com/seomeasures/pinglist/
http://www.boraro.gozaru.jp/blog/blog_ping-foreign.html
http://queenpurchase.blog100.fc2.com/blog-entry-15.html
http://whiteway.blog103.fc2.com/blog-entry-40.html
http://weblibrary.s224.xrea.com/weblog/web20/blog/mtpingping.html
http://goodorbad.seesaa.net/article/142911517.html

コメントする

メールアドレスが公開されることはありません。

CAPTCHA