Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用PHP的子域应用程序策略_Php - Fatal编程技术网

使用PHP的子域应用程序策略

使用PHP的子域应用程序策略,php,Php,我不太清楚该怎么说,但我会尽力的 我有一个应用程序(用PHP编写),我想安装在如下位置: /app/build/1.0/ http://sub1.mydomain.com http://sub2.mydomain.com etc .. 现在,我希望能够设置子域,如下所示: /app/build/1.0/ http://sub1.mydomain.com http://sub2.mydomain.com etc .. 首先,我希望在子域中放置尽可能少的#文件(我认为只是一个配置文件),并指

我不太清楚该怎么说,但我会尽力的

我有一个应用程序(用PHP编写),我想安装在如下位置:

/app/build/1.0/
http://sub1.mydomain.com
http://sub2.mydomain.com
etc ..
现在,我希望能够设置子域,如下所示:

/app/build/1.0/
http://sub1.mydomain.com
http://sub2.mydomain.com
etc ..
首先,我希望在子域中放置尽可能少的#文件(我认为只是一个配置文件),并指向所有php文件的build文件夹

但是,在子域具有某种自定义的情况下,我希望能够在子域中实际放置自定义文件,然后应用程序将使用该文件(换句话说,应用程序首先查找本地文件,如果存在,请使用它,否则,使用默认的构建文件夹文件)

最后,如果我发布1.1版,我应该能够将子域重新指向1.1文件夹

我对这一点有一个基本的了解,也知道如何实现这一点,但我所寻找的是其他想法,或者我可能面临的问题(或者我可能没有考虑过的其他问题,比如我可能还没有看到的可伸缩性问题,或者如果我走这条路,我可能无法做到的其他事情)


底线问题:这是一个好主意还是坏主意,为什么?

我假设每个子域中的配置文件意味着每个站点都有配置差异,因此您不能将所有未优化的站点合并到一个文件夹中,而只是让子域指向它(在DNS中)

我已经设置了这样的站点,子域将有一个index.php文件。php文件将定义一组配置选项,然后调用与startApp()等价的东西;每个站点都将其包含路径设置为包含应用程序文件。这可以在apache配置或index.php文件中完成

如果要自定义站点,则可以更改包含路径以指向自定义代码,如果需要,可以将其保留在该站点文件夹中


老实说,我认为更难的问题将是保持所有的定制记录和更新。但这是一个完全不同的问题。

尽管斯科特的想法很有趣。PHP有没有办法知道子域名?如果是这样的话,我可以用它来为DB构建一个前缀。$\u SERVER['SERVER\u NAME']应该给你这个前缀。看:酷。我会试一试——如果有效的话,我会把你的答案标记为接受——不过给我一周左右的时间来完成。谢谢:)斯科特-还没有100%完成,但这个概念确实让我几乎达到了目的,所以将你的答案标记为已接受-再次感谢!