共享数据多个站点

时间:2009-03-25 17:18:25

标签: php php4

我最近为一家大公司担任php web开发人员职位。他们有多个站点共享大部分相同的内容(主要是新闻文章)。所有网站虽然用PHP编写,但在添加新闻文章或更改其他信息时,内容是静态的,并在所有网站上手动编辑。 “高级程序员”反对使用cms由于某种原因,反对升级到php 5,反对安装mod_rewrite,基本上我必须在一个非常小的参数内工作。

我花了前3个星期写了很多课程,以便在混乱中找到一些理智,但我必须找到一种方法来轻松地复制这些数据。我在想一些不需要数据库的东西(头脑人员不想分散数据,所以除了内部网以外的任何地方的数据库都是禁止的),我只想要一个集中的XML文件或其他东西,即使我需要手工编辑它...任何想法???

5 个答案:

答案 0 :(得分:1)

将PHP视为模板引擎,让所有主页从一个站点的RSS源中提取html标记(或xml)文章。

编辑Feed以添加新文章,将标记的文章添加到主网站,这一切都非常非常简单,易于理解和扩展。

无需涉及“真正的”cms,数据库或其他任何内容。

- 亚当

答案 1 :(得分:0)

用户网站使用的所有文档的一个文件夹。

答案 2 :(得分:0)

您可以使用CURL通过HTTP访问所需内容。将CURLOPT_RETURNTRANSFER选项设置为1将允许您获得您想要的任何内容。 XML,HTTP等

答案 3 :(得分:0)

拥有一个主网站,在该主网站上创建原始内容&编辑。

在所有其他方面,使用.htaccess中的Apache ErrorDocument处理程序将404错误路由到新的PHP脚本。

ErrorDocument 404 /syndicate.php

在syndicate.php中,取uri(来自$ _SERVER ['REQUEST_URI']),从原始域中获取内容并使用200 / OK标头输出(因此它不被视为404)。

$master_domain = 'http://master.com';

$master_html = file_get_contents($master_domain . $_SERVER['REQUEST_URI']);

if($master_html != '') {
header("HTTP/1.0 200 OK");
echo $master_html;
} else {
header("HTTP/1.0 404 Not Found");
}

重复的内容仍然在请求的网址下。

答案 4 :(得分:0)

如果高级程序员反对行业标准工具,如CMSes,PHP5(至少在考虑PHP3 / PHP4时 - 不需要语言圣战),mod_rewrite等,是时候让管理层参与进来了。这种态度是不可接受的。