-5

アイデアは、10分ごとにアドレスまたはIPにpingを送信して信号が跳ね返るかどうかを確認するためにhtmlまたはcssで記述できるようにしたいということです。そうであれば、私のウェブサイトのステータスは「オンライン」と表示されます、または信号を受信しない場合は、ウェブページのテキストを「オフライン」に変更します。複数のサーバーで動作するように交換可能にする方法がわかりません。これまでのところ、cron ジョブでしか実行する方法を見つけていませんが、Windows 7 を実行していて、エミュレーターでスクリプトを作成する方法がわかりません。見つかった。また、私はhtmlとcssにかなり慣れていないか、おそらくこれを行う方法をすでに知っているでしょう:/

どんな助けでも大歓迎です、前もって感謝します。

4

3 に答える 3

4

外部サーバーにファイルを書き込めますか?

その場合は、次の 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 ヘッダーの最後にリストされるように、それらをリンクしてください。


ただし、この純粋な CSS の方法は10 分ごとに繰り返すことはできません。そのためには、JavaScript が必要です。

JSON -Pリクエストを外部サーバーに送信し、HTML のテキストをデフォルトで「offline」に設定し、JSON-P リクエストが成功した場合は「online」に変更します。(JSON-P は決してエラーを返しません。) ただし、これには、JSON が空であっても、JSON を返すために、その外部サーバー上に独自に作成したページが必要です。

外部サーバーへの書き込みアクセス権がない場合は、おそらくできることはあまりありません。

于 2013-01-23T20:57:02.143 に答える
1

これには、ページに JavaScript を少し追加する必要があります。

AJAX 要求を実行して、ページがオンラインであることを確認できます。ページが正常に読み込まれると、AJAX 要求は 200 ステータス コードを返します。ページがテスト ページとは異なるドメインにある場合は、クロス オリジン リクエスト (CORS) を有効にするか、JSONP レスポンスを使用するか、サーバーでプロキシ ページを使用する必要があります。

もちろん、失敗したとしても、それは Web サイトがオフラインであることを意味するわけではありません。接続が切断された可能性があります (たとえば)。

于 2013-01-23T20:54:52.960 に答える
0

サーバー ベース スクリプト [PHP/ASP] と、クライアント側で AJAX を使用する JavaScript が必要です。

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 ファイルです。

アヤックスだろう

        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 ライブラリが必要です。

ご存じのとおり、Cascading Styled Sheet と呼ばれる CSS は、デザイン目的でのみ使用されます。CSS では、スクリプトを作成することはできず、ページのスタイルを設定することしかできません。HTMLはHTMLコンテンツの作成に使用されますが、そのようなものには使用されません

このためには、外部 Source 間の「接続部分」の PHP または ASP と、ライブ更新用の JavaScript を学習する必要があります。

于 2013-01-23T21:06:50.567 に答える