【问题标题】:Same ASP.NET website on multiple subdomains but different databases?多个子域上的相同 ASP.NET 网站但不同的数据库?
【发布时间】:2010-10-10 22:32:13
【问题描述】:

假设我想在 IIS 中创建 10 个网站,每个网站都指向本地硬盘上的同一个网站,每个都运行相同的代码,但在不同的子域上。

subdomain1.domain.com, subdomain2.domain.com, ..., subdomain10.domain.com

如何在我的 web.config 文件中添加多个连接字符串并将每个连接字符串绑定到不同的子域?

我想这样做是因为每个网站都会有一个包含不同数据的不同数据库。

【问题讨论】:

    标签: asp.net sql-server


    【解决方案1】:

    由于web.config 文件对所有站点都是通用的,因此您可以为每个子域添加多个这样的连接字符串。

    <connectionStrings>
            <add connectionString="" name="subdomain1"/>
                <add connectionString="" name="subdomain2"/>
    </connectionStrings>
    

    然后您可以使用检查当前网址

    HttpContext.Current.Request.Url.AbsoluteUri
    

    然后使用正确的连接字符串(?)

    【讨论】:

      【解决方案2】:

      至少有两种方法可以做到:

      • 创建 10 个 IIS 站点,每个站点都指向它自己的目录,将尽可能多的功能放置在 GAC 的 dll 中。然后你就有了共享的代码库。但磁盘上仍有一些单独的站点数据。
      • 创建 10 个 IIS 站点,每个站点都指向同一个目录。将所有 10 个连接字符串放在 web.config 中。在您的代码中具有为请求选择正确连接字符串的功能。

      实际上,对于第二个,您可能不需要 10 个站点。只需让 DNS 将所有 10 个站点指向同一个 IP。

      但是,您应该考虑它是否比它的价值更多。自动将站点复制到 10 个位置的安装脚本可能是最好的方法。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-08-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-08-11
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多