PHPで簡単に死活監視をする方法
処理の前に特定のサーバの状態を確認する必要があったのでメモ。
fsockopen関数を利用します。
fsockopen — インターネット接続もしくは Unix ドメインソケット接続をオープンする
■サンプルコード
function ping($host, $port=80, $timeout=5){
$fsock=@fsockopen($host, $port, $errno, $errstr, $timeout);
if(!$fsock){
echo 'errno ... ' . $errno . "\n";
echo 'errstr ... ' . $errstr . "\n";
return FALSE;
}else{
return TRUE;
}
}
$host='www.mogumagu.com';
$res=ping($host);
echo $res ? '応答有り' : '応答無し' . "\n";