<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');ignore_user_abort(true);
header("Content-Type: text/html;charset=utf-8");
date_default_timezone_set("PRC");class runjob
{
static $myselftime = 50;
static $url = "http://127.0.0.1/to.php?pwd=123456789";
static $myself = "http://127.0.0.1/autorun.php";
static $urltime_H = 18;
static $urltime_i = 00; function __construct()
{
if (!file_exists("runtime.txt"))
{
$fp = fopen("runtime.txt","w");
fwrite($fp,"");
fclose($fp);
}
if (!file_exists("time.txt"))
{
$fp = fopen("time.txt","w");
fwrite($fp,"");
fclose($fp);
}
if (file_exists("autorun.stop"))
exit();
} function get_content($url)
{
$buf = parse_url($url);
$host=$buf['host'];
$path=$buf['path'];
if (isset($buf['query']))
$path .= "?" . $buf['query'];
$header = "GET " . $path . " HTTP/1.1\r\n";
$header .= "Host: " . $host . "\r\n";
$header .= "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\n";
$header .= "Cache-Control: max-age=0\r\n";
$header .= "Accept-Encoding: gzip,deflate,sdch\r\n";
$header .= "Accept-Language: zh-CN,zh;q=0.8\r\n";
$header .= "User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.72 Safari/537.36\r\n";
$header .= "Connection: close\r\n\r\n";
$fp = fsockopen($host, 80, $errno, $errstr, 5);
if ($fp)
{
fputs($fp,$header);
fclose($fp);
return true;
}
else
{
return false;
}
} function main()
{
$nowtime = $_SERVER["REQUEST_TIME"];
$time = file_get_contents("runtime.txt");
if ((self::$urltime_H == date("H")) && (self::$urltime_i == date("i")) && ($time != date("d")))
{
$this -> get_content(self::$url);
echo '运行成功';
$fp = fopen("runtime.txt","w");
fwrite($fp,date("d"));
fclose($fp);
} $time = file_get_contents("time.txt");
if (($nowtime - $time) >= self::$myselftime)
{
sleep(self::$myselftime);
$this -> get_content(self::$myself);
$fp = fopen("time.txt","w");
fwrite($fp,$nowtime);
fclose($fp);
}
}}
$job = new runjob();
$job -> main();程序会自动访问自身,并在18:00的时候访问目标网址http://127.0.0.1/to.php?pwd=123456789,访问一次,但有时发现会访问多次,次数是随机的,出现这种情况的时间也是随机的URLPath函数Windows服务器
error_reporting(E_ALL);
ini_set('display_errors', '1');ignore_user_abort(true);
header("Content-Type: text/html;charset=utf-8");
date_default_timezone_set("PRC");class runjob
{
static $myselftime = 50;
static $url = "http://127.0.0.1/to.php?pwd=123456789";
static $myself = "http://127.0.0.1/autorun.php";
static $urltime_H = 18;
static $urltime_i = 00; function __construct()
{
if (!file_exists("runtime.txt"))
{
$fp = fopen("runtime.txt","w");
fwrite($fp,"");
fclose($fp);
}
if (!file_exists("time.txt"))
{
$fp = fopen("time.txt","w");
fwrite($fp,"");
fclose($fp);
}
if (file_exists("autorun.stop"))
exit();
} function get_content($url)
{
$buf = parse_url($url);
$host=$buf['host'];
$path=$buf['path'];
if (isset($buf['query']))
$path .= "?" . $buf['query'];
$header = "GET " . $path . " HTTP/1.1\r\n";
$header .= "Host: " . $host . "\r\n";
$header .= "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\n";
$header .= "Cache-Control: max-age=0\r\n";
$header .= "Accept-Encoding: gzip,deflate,sdch\r\n";
$header .= "Accept-Language: zh-CN,zh;q=0.8\r\n";
$header .= "User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.72 Safari/537.36\r\n";
$header .= "Connection: close\r\n\r\n";
$fp = fsockopen($host, 80, $errno, $errstr, 5);
if ($fp)
{
fputs($fp,$header);
fclose($fp);
return true;
}
else
{
return false;
}
} function main()
{
$nowtime = $_SERVER["REQUEST_TIME"];
$time = file_get_contents("runtime.txt");
if ((self::$urltime_H == date("H")) && (self::$urltime_i == date("i")) && ($time != date("d")))
{
$this -> get_content(self::$url);
echo '运行成功';
$fp = fopen("runtime.txt","w");
fwrite($fp,date("d"));
fclose($fp);
} $time = file_get_contents("time.txt");
if (($nowtime - $time) >= self::$myselftime)
{
sleep(self::$myselftime);
$this -> get_content(self::$myself);
$fp = fopen("time.txt","w");
fwrite($fp,$nowtime);
fclose($fp);
}
}}
$job = new runjob();
$job -> main();程序会自动访问自身,并在18:00的时候访问目标网址http://127.0.0.1/to.php?pwd=123456789,访问一次,但有时发现会访问多次,次数是随机的,出现这种情况的时间也是随机的URLPath函数Windows服务器
最保险的方法就是有人访问,然后触发这个“定时”。