一个PHP应用程序,从不同的域访问时看起来不同

时间:2010-11-06 19:09:50

标签: php url content-management-system

我正在为一家小型网页设计公司工作,我们正在寻求实施家庭酿造的CMS来帮助管理我们的网站。

目前,我们将CMS安装在每个客户的唯一用户下的单独文件夹中,然后将其域指向该文件夹。

这方面的困难部分是向后移植重要的更改,例如异步新的Google分析代码或我们改进的防止评论垃圾邮件的方法。

关于更好方法的几个问题:

1:建议对我们生产的每个网站使用相同的后端代码吗?

2:假设是,最好的方法是什么?我要检查$ _SERVER ['SERVER_NAME']以确定要使用的模板,数据库连接等。

以前有过这样的经历吗?

2 个答案:

答案 0 :(得分:1)

如果它们全部托管在同一台物理服务器上,那么您需要$_SERVER['HTTP_HOST'],这是用户请求的域。 SERVER_NAME是服务器本身的物理名称(由Apache的ServerName指令设置)。

如果它们彼此之间没有太大的不同,那么在同一个代码库中托管多个站点是没有问题的。如果这只是一些品牌的问题,并且在这里和那里改变一点文字/图形,没有大问题。但是如果你在做根本不同的网站,那么你的代码将成为一个难以维护的混乱“如果服务器名称是X,那么就做其他事情做其他事情。”

答案 1 :(得分:0)

我尝试过这种方式,有一个主要的CMS推出了多个网站,并在它上线之前离开了它。我们遇到的问题是更新和更改。任何类型的定制都在窗外,没有太多额外的工作。想要添加表单字段?为心痛做好准备。最后,我们做了你现在拥有的,多次安装,但是他们共享了一些主要脚本,其中调用脚本通过哪个站点请求什么,例如表单邮件和安全检查。

对于我们所知道的大量更新,我们知道它们在所有这些内容中是相同的,或者在多个页面中,我们要么编写一个更新脚本,在文件中搜索和替换,或者在BBedit中执行。

通过谷歌分析,我觉得你不得不手动进行手动更改,因为它们都有唯一的ID。