我希望我的网站用户检查是否有其他网站(http和/或https)已启动。有些网站使用谷歌分析(如果我理解的话)。但我不明白他们是怎么做到的。如何检查从PHP/HTML网站是否启动?
问题1)如何在我的网站上使用google-analytics来检查是否有其他网站已启动?
问题2)我该怎么做?使用PHP或JavaScript?我想知道,如果谷歌分析可能更可靠的话,如果他们使用多个服务器位置来检查网站是否在线比较,我将与我自己的代码使用一个单一的位置。
我希望我的网站用户检查是否有其他网站(http和/或https)已启动。有些网站使用谷歌分析(如果我理解的话)。但我不明白他们是怎么做到的。如何检查从PHP/HTML网站是否启动?
问题1)如何在我的网站上使用google-analytics来检查是否有其他网站已启动?
问题2)我该怎么做?使用PHP或JavaScript?我想知道,如果谷歌分析可能更可靠的话,如果他们使用多个服务器位置来检查网站是否在线比较,我将与我自己的代码使用一个单一的位置。
您可以使用服务器端Curl并监控http响应标头,网站超时。
您可以ping服务器并监视响应。此链接显示了PHP中的实现:http://www.darian-brown.com/php-ping-script-to-check-remote-server-or-website/
可以尝试直接连接到服务器的http端口。
$canConnect = FALSE;
$host = 'www.example.com';
$service_port = 80; // http, for https use 443;
$address = gethostbyname ($host);
$socket = socket_create (AF_INET, SOCK_STREAM, SOL_TCP);
if ($socket !== FALSE) {
$result = socket_connect ($socket, $address, $service_port);
if ($result) {
$canConnect = TRUE;
}
socket_close($socket);
}
Ping不可靠。它可能被禁用来回答ping请求,因此即使ping超时或被拒绝,站点也可能会启动。 – Radek 2012-07-14 10:27:09
我认为你拥有你想要检查的所有网站的问题,因此如果需要ping将启用它们。 – 2012-07-14 11:07:11
ping响应并不意味着Web服务器已启动并且功能正常。 – worenga 2012-07-14 11:44:25