html / css服务器状态检查器?

时间:2013-01-23 20:51:33

标签: html css

我的想法是,我希望能够用html或css编写它来每10分钟ping一次地址或IP以检查它是否会反弹信号,如果是,那么我网站上的状态就是“在线”,或者如果它没有收到信号,则会更改我网页上的文字以说“离线”。我不知道如何使它可以与几个服务器一起使用Interchangeable,到目前为止我只找到了一种方法来处理cron作业,但我正在运行Windows 7并且不知道如何在模拟器中编写脚本我找到。另外我对html和css相当新,或者我可能已经知道如何做到这一点:/

非常感谢任何帮助,提前致谢。

3 个答案:

答案 0 :(得分:3)

你能在外部服务器上写一个文件吗?

如果是这样,请在那里添加一个小样式表来改变以下HTML:

<span class="online">Online</span>
<span class="offline">Offline</span>

来自此CSS(在您的服务器上):

.online { display: none; }
.offline { display: inline; }

到此:

.online { display: inline; }
.offline { display: none; }

确保链接它们,以便外部服务器的样式表在HTML标题中列出 last


但是,这种纯CSS方法可以每隔十分钟重复 - 为此,您需要JavaScript。

向外部服务器发出JSON-P请求,在HTML中将文本默认为“离线”,如果JSON-P请求成功,则将其更改为“在线”。 (JSON-P永远不会返回错误。)但是,这还要求您在该外部服务器上拥有自己的页面以返回JSON,即使它是空的。

如果您无权写入外部服务器,那么您可能做的事情可能不多。

答案 1 :(得分:1)

为此,您需要在页面中添加一些JavaScript。

您可以执行AJAX请求以确定页面处于联机状态 - 如果AJAX请求成功加载页面,它将返回200状态代码。如果页面与测试页面位于不同的域中,则需要启用跨域请求(CORS)或JSONP响应,或使用服务器上的代理页面。

当然,如果失败,并不意味着网站处于脱机状态 - 您的连接可能已经丢失(例如)。

答案 2 :(得分:0)

您需要在客户端使用服务器基本脚本[PHP / ASP]和JavaScript和AJAX。

你可以使用Library for Javascript jQuery(http://jquery.com/)一个强大的库,可以节省你的时间。

Html会是这样的:

<div class='serverstatus'></div>

对于php,你必须制作一个像

这样的小脚本
$host = 'Your IP'; 
$port = your.port; 
//here you define the Server Info [IP/PORT]
$timeout = 1;
//You open a connection to that ip on that port and check if responding or not
$handler = fsockopen($host,$port,$errcd,$errstr,$timeout);
if($handler){   
   echo "1";
} else {
   echo "0"; 
} 
fclose($handler);

这是适用于JavaScript的PHP文件:

Ajax将是

        setTimeout(function() {$.ajax({
            url:'phpfile.php',
            type: 'GET',
            success: function(data){
                if (data == "1") {
                    $(".serverstatus").html("Online");
                }
                else if (data == "0") {
                    $(".serverstatus").html("Offline");
                }
                else {
                    $(".serverstatus").html("Undefined");
                }

            }
        });},600000);

需要jQuery Library。

您的知识称为Cascading Styled Sheet,它仅用于设计目的。使用CSS,您无法编写脚本,除了样式化页面之外,您无法执行任何操作。 HTML用于创建HTML内容,同样不用于那种东西

为此,你需要学习外部源和javascript之间的“连接部分”的PHP或ASP,以便进行实时更新。