Php 同一服务器上的多个站点共享代码

Php 同一服务器上的多个站点共享代码,php,architecture,lamp,Php,Architecture,Lamp,我将要做一个大约5个网站的系列。它们都需要在同一个系统上运行。我计划让它们都指向同一台服务器,然后根据访问它的域,将提供不同的内容/样式。因此,它基本上将是5个左右不同的零售网站,专门针对特定的产品类型 但是都使用相同的后端代码,这样维护起来就容易多了。我以前从未设定过这样的事情,并且想知道是否有任何信息我应该考虑,或者如果有人知道一个好的地方来解释如何做好这件事?p> 此外,我们不是在接待自己,而是通过一家接待公司(如果这很重要的话) 谢谢 听起来很直白对我来说: 只要有一个目录: /var/

我将要做一个大约5个网站的系列。它们都需要在同一个系统上运行。我计划让它们都指向同一台服务器,然后根据访问它的域,将提供不同的内容/样式。因此,它基本上将是5个左右不同的零售网站,专门针对特定的产品类型

但是都使用相同的后端代码,这样维护起来就容易多了。我以前从未设定过这样的事情,并且想知道是否有任何信息我应该考虑,或者如果有人知道一个好的地方来解释如何做好这件事?p> 此外,我们不是在接待自己,而是通过一家接待公司(如果这很重要的话)


谢谢

听起来很直白对我来说:

只要有一个目录:

/var/www/siteLibraries/foo.php
或其他合适的目录。那就有

/var/www/site1/foo.php
/var/www/site2/foo.php
并在PHP()中设置默认类加载,以便在专家站点实例化类时。。。它将搜索站点的本地库(用于专家覆盖),然后默认为共享库。您也可以这样安排内容

一个简短的解释,但一个粗略的概述,我将如何处理它,如果你不需要担心两个网站共享权限(我假设客户端不会编辑代码)

请记住:您的每个站点的代码应该从默认代码库中进行专门化(OOP非常适合这样做)。不具体的是共享的。当然,共享代码库应该知道它是共享的,所以像日志之类的东西应该指定发生错误时哪个特定站点正在使用库,以及所有这些


祝你好运

我目前正在编写一个内容管理系统来解决这个问题。有几件事我觉得很有帮助

在开发网站时,将每个网站的共同点降低到最低。也就是说,您的所有网站共有哪些元素?例如,每个网站都有一系列页面,可能还有某种形式的购物车系统

对于我的系统,每个站点都有一个单独的模板文件。通过这种方式,我将PHP和HTML分开,这使事情变得更加容易。一旦我有了最低的公分母,对我来说最困难的挑战就是区分网站

我使用我的htaccess文件将example.com重定向到www.example.com——这样,我就可以可靠地从标题中提取www.example.com,并使用它从数据库中选择给定站点的信息

艾登在特定代码方面也有一些好的观点。对我来说,我发现代码并不是特别重要的问题,而是如何在多站点环境中实现代码


希望这能有所帮助。

如果你想让你的网站有不同的代码基础,艾登的方法看起来不错

如果您的需求更简单,即所有站点运行相同的代码,但根据域名显示不同的内容,那么您也可以使用更简单的解决方案

将所有域指向脚本所在的同一目录,并根据HTTP“主机”值区分要发送的内容类型

即:

注:此代码用于说明目的。正如所写的,它容易受到SQL注入的攻击,您应该适当地保护它

$host = $_SERVER["HTTP_HOST"];

$rs = mysql_query("SELECT * FROM products WHERE website = '$host'");

// ...etc