用于将rss feed文件从远程位置复制/粘贴到我的服务器的脚本

时间:2010-12-15 05:54:59

标签: php javascript html

我想从我的服务器运行一个cronjob,它从远程位置提取rss feed文件并复制到我的服务器。这样我服务器中的rss feed文件将是最新的远程文件。

但是cronjob很简单。我无法从命令创建/运行cronjob,而是通过选择时间/日和用于该cronjob的文件来为我的域安排cronjob,以便它在预定时间触发文件。该文件中的PHP代码将完成剩下的工作。但是不知道如何让脚本将rss从远程url提取到我的服务器。你有一个想法/脚本可以工作吗。

我的意思是说我想通过替换旧文件(如果有的话)将rss feed文件的新副本从远程服务器复制并粘贴到我的服务器位置,这个过程在我的每个时间表中继续

我不想从rss Feed中提取内容项,而是希望文件复制/粘贴

1 个答案:

答案 0 :(得分:2)

如果您为fopen()包装器启用了远程URL,那么这很容易。

你的cron PHP文件看起来像这样......

<?php

// If you are running via CLI, deny all non CLI requests
if (PHP_SAPI !== 'cli') {
    exit;
}

$remoteFeed = 'http://example.com/feed.rss';

$feed = file_get_contents($remoteFeed);

if ($feed !== FALSE) {  

    file_put_contents('feed.rss', $feed);

}

您的文件feed.rss应该是远程文件的副本。如果获取远程文件时出错,则不会更新本地副本。如果远程服务器以空白响应正文响应,则更新。

如果您没有启用allow_fopen_url,则需要使用cURL。