我们有一个CMS应用程序,目前托pipe在域名下,我们每个客户都有一个子域指向他们的软件版本。 这全部在IIS中作为1个网站托pipe,代码检查URL并确定应该显示哪些项目。
我正在更新软件使用asp.net MVC web api和angularJS的过程。 我想分别托pipe每个站点,这样可以让我们为每个客户端设置一个.config文件,我们可以在其中设置不同的login方法(Facebook,Twitter或客户端的自定义方法),同时公司也可以拥有自己的URL /域。
我正确的想,为了做到这一点,我需要在单独的文件夹中有多个网站的副本,每个文件夹将设置为IIS中的不同网站?
这将使更新软件有点痛苦,有没有办法让网站的代码在1个地方,并为每个客户仍有一个单独的configuration文件?
我不是一个“服务器”的人,但我知道的基本知识,以使网站启动和运行,所以如果有人有一些例子,他们可以指向我configuration这一点,这将是伟大的。
提前致谢
我会避免使用指向同一物理文件夹的多个站点/虚拟目录。 特别是如果您计划添加更多客户端/站点,部署/configuration更改将取决于您何时更新,如何更新。
拥有独立的站点使您能够一次部署一个站点,例如在不影响其他站点的情况下testing新function。 只要你自动部署相同的代码,更新全部不应该是一个问题,最后它只是文件的拷贝。 如果你正在使用这些设置,这个设置也将使你能够部署function分支,如果你不想要,当你有很多客户想要不同的function,而不想首先得到新的改变。 我已经pipe理了500多个运行相同代码库的站点,所有这些站点都有自己的configuration/主页面/模板/等等。
或者,如果您仍想保留1个站点,只需将“每个客户端”configuration存储在您的数据库中,这样就不必为每个站点configuration不同的configuration文件。