我正在制作一个Web应用程序,使用cUrl从互联网上抓取一个页面并相应地更新另一个页面。我一直这样做是通过从cUrl保存HTML然后在另一页上解析它。问题是:我无法弄清楚我应该为文本文件使用什么权限。我没有将它保存在我的/ public / html文件夹中,因为我不希望任何网站的用户能够看到它。我只希望他们能够看到它在网站上解析的方式。
这是cUrl代码:
$perfidlist = "" ;
$sourcefile = "../templates/textfilefromsite.txt";
$trackerfile = "../templates/trackerfile.txt";
//CURL REQUEST 1 OF 2
$ch = curl_init("http://www.website.com");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
<more cUrl options omitted>
ob_start();
$curl2 = curl_exec($ch);
ob_end_clean();
curl_close($ch);
//WRITING FILES
$out = fopen($sourcefile, "r");
$oldfiletext = fread($out, filesize($sourcefile));
fclose($out);
$runcode = 1 ;
我保存文本文件的部分:
/*only writing a file if the site has changed*/
if (strcmp($oldfiletext, $curl2) !==0)
{
$out = fopen($sourcefile, "w");
fwrite($out, $curl2);
fclose($out);
$tracker = fopen($trackerfile, "a+");
fwrite($tracker, date('Y/m/d H:i:s')."\n");
fclose($tracker);
$runcode = 1 ;
}
我收到的错误是最后一次'$ out = fopen($ sourcefile,“w”);'部分说:
Warning: fopen(../templates/textfilefromsite.txt): failed to open stream: Permission denied in /usr/share/nginx/templates/homedir.php on line 72
有什么想法吗?
答案 0 :(得分:0)
问题出在文件/文件夹权限上。我最终将文件的权限更改为“ 666”,即“ -rw-rw-rw-”,并且可以正常工作。