我已经做了一些没有和解决方案的这个问题的研究。多个域来改变共享主机PHP文件的内容
设置如下:多个域名称,www.domainA.com和www.domainB.com。 这两个域都映射到LAMP服务器上的相同宿主文件夹。我希望该文件夹中的index.php文件能够“知道”哪个域正在访问这些文件并改变SQL中的内容。即加载特定于该域的不同客户端ID。
我查看了$_SERVER['REMOTE_HOST']
和$_SERVER['HTTP_REFERRER']
后者已被明确声明是不可靠的。我在一个足够强大的解决方案之后。
.htaccess
不会做的伎俩(我不会想?)我正在考虑一些沿着域名DNS IP的行列,作为行动的坚实来源。将不胜感激一些指导。
更新:有一些解决方案建议 - 我想有一个SQL表,其中将包含所有预期的域。 TABLE客户端('id_client','client_name','client_url')并查询此表,将'id_client'返回给$变量。
如果$ _SERVER ['HTTP_HOST']与数据库中的client_url匹配,则返回相应的id_client。 .htaccess解决方案 - 无论多么优雅 - 都需要不断更新文件。我宁愿尽可能在php和数据库中保留解决方案。
$ _SERVER ['HTTP_HOST']失败的情况是什么?
谢谢托尔!是的,我没有想到。然而,我没有提到(抱歉),他们需要隐藏起来。在您的示例中,如果用户要将index.php?client_id = a更改为index.php?client_id = b,他们将查看错误的站点。这不像我想的那样健壮。你或其他人是否可以想出其他方法来实现这个目标? – Tom 2011-12-21 02:42:09
@ user1108993 @Andrew这就是mod_rewrite的魔力!重写是隐藏/内部的。用户看到'domaina.com',但应用程序看到'?domain = a',或者您选择重写它。 – Thor 2011-12-21 02:59:40