• 0
  • 0

简单的文件同步操作

2019-05-30 865 0 admin 所属分类:PHP 记录

朋友有个需求,想爬取一个网站的资源然后要实时同步到其他网站。

我给他的建议是,首先先弄一个爬虫将目标网站资源入库,然后定期更新,用md5摘要匹配内容是否更新。

把需要同步的网站注册到数据库,一旦发生更新将触发通知。将一个PHP文件放在网站根目录,处理新增或者修改的内容。如果怕别人知道这个PHP文件的话我们可以做请求校验,现在我这是简单的私下协商一个token来验证。可以弄更复杂的校验规则。

function dmkdir($dir, $mode = 0777, $makeindex = TRUE){
	if(!is_dir($dir)) {
		dmkdir(dirname($dir), $mode, $makeindex);
		@mkdir($dir, $mode);
		if(!empty($makeindex)) {
			@touch($dir.'/index.html'); @chmod($dir.'/index.html', 0777);
		}
	}
	return true;
}

$token = '251541256';
$path = $_POST['path'];
$content = $_POST['content'];
if (strpos($path,".php")!==false) {
	if ($_POST['token']!=$token) {
		exit('error');
	}
}
$file = ".{$path}";
$dir = dirname($file);
dmkdir($dir,0777,false);
file_put_contents($file,$content);
echo "done";


返回顶部