gpt4 book ai didi

asp.net - 根据域名自定义web.config

转载 作者:行者123 更新时间:2023-12-02 13:52:59 26 4
gpt4 key购买 nike

我的大多数网站都包含一个实时(生产)环境和两个测试环境,可以通过三个不同的域名访问,例如

www.mysite.com
test1.mysite.com
test2.mysite.com

以上每个网站都是 IIS 网站,当它们都运行相同版本的网站时,它们都指向相同的物理版本化文件夹。

发布新版本时我通常所做的是将新版本放入新的物理文件夹中,例如/inetpub/wwwroot/mywebsite/v41/ 并将测试站点之一指向该版本的站点并对其进行测试。一旦通过,LIVE(和其他测试)网站也会重新指向新版本(例如 v41)。

现在我的问题是这样的。每个网站都有自己的数据库(测试有一个 LIVE 副本,可以通过几个 SQL BACKUP/RESTORE 命令刷新),但是,这三个网站都“查看”相同的 web.config 文件,因此具有相同的数据库连接字符串(System.Data.SqlClient 或 System.Data.EntityClient 提供程序)。

是否有任何方法可以配置 web.config 以根据传入请求的域名/IIS 网站提供不同的connectionStrings

也许是一个标签或一个限定给定标签的属性?

我已经到处寻找解决方案,但尚未找到。提前致谢,血巴兹

最佳答案

有两种方法可以管理多个环境特定的Web.config文件....

  1. 使用 t4 模板,下面是该模板的链接 http://ilearnable.net/2010/08/02/t4-for-complex-configuration/

  2. VS 配置管理器并为您的项目创建新的“LIVE”、“test1”、“test2”构建配置,查看链接

http://weblogs.asp.net/scottgu/archive/2007/09/21/tip-trick-automating-dev-qa-staging-and-production-web-config-settings-with-vs-2005.aspx

希望这有帮助..

关于asp.net - 根据域名自定义web.config,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9688130/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com