0

別のテキストファイルからのリンクの束をチェックするためにphpスクリプトを理解しようとしています。それらのいずれかが404を表示している場合、スクリプトはphpファイルをトリガーする必要があります。これによりsms通知が送信されます。私はすでにSMSファイルの準備ができており、それをトリガーする必要があります。

たとえば、links.txt(サーバーにもアップロードされます)には、次のようないくつかのリンクがあります。

http://example.com/link1
http://example.com/link2
http://example.com/link3

これらのリンクは必ずしもオフラインではなく、メインサイトが稼働している間に、存在しないページにリダイレクトされる可能性があります。

If example.com/link1 is down smsnotice1.php should be triggered
If example.com/link2 is down smsnotice2.php should be triggered
If example.com/link3 is down smsnotice3.php should be triggered

smsnotice1.php、smsnotice2.php、smsnotice3.phpへの参照は、メインスクリプトまたは別のphpファイルのいずれかにあります。

どのリンクもダウンしていない場合、通知は送信されません。

このスクリプトは、頻繁にチェックするためにcron上のphpサーバーから実行できます。助けてくれてありがとう!

4

3 に答える 3

2
  1. cURLを使用して、ページのコピーをリクエストします。
  2. で返されるHTTPステータスを確認します$http_status = curl_getinfo($http, CURLINFO_HTTP_CODE);
  3. 200以外の場合は、アラートを送信してください。

SMSの送信方法については、ほとんどすべてのモバイルプロバイダーが、SMSを携帯電話に送信するために使用できる電子メールドメインを持っています。例:1235555555@mymobile.tld

于 2013-01-21T16:04:58.453 に答える
1
  1. でテキストファイルを開きますfile_get_contents()
  2. URLごとに、get_headers()
  3. $headers[0]含まれていることを確認してください200 OK
于 2013-01-21T16:05:42.063 に答える
1
<?php
$url="http://site.com";
$handle = curl_init($url);
curl_setopt($handle,  CURLOPT_RETURNTRANSFER, TRUE);

/* Get the HTML or whatever is linked in $url. */
$response = curl_exec($handle);
$httpCode = curl_getinfo($handle, CURLINFO_HTTP_CODE);
/* Check for 404 (file not found). */

if ($httpCode == '404')
        { echo 'yes';}
else    
        {echo 'no';}

?>
于 2013-03-27T10:34:01.003 に答える