【问题标题】:Azure web role no longer copies web.config to role directoryAzure Web 角色不再将 web.config 复制到角色目录
【发布时间】:2011-10-25 18:21:19
【问题描述】:

我们过去可以在角色部署过程中(从启动任务)访问 Web 角色的 web.config 文件:

(来自 servicedefinition.csdef)

<Startup>
  <Task commandLine="sometask.cmd ..\..\..\web.config" executionContext="elevated" taskType="simple" />
</Startup>

现在,Azure 似乎不再将 web.config 复制到角色目录,因此我们无法在角色部署期间访问应用程序配置设置。

我们可以通过使用输出类型为“始终复制”的单独 .config 文件来解决问题,但这会破坏我们利用部署配置文件(如 web.config.release 等)的能力。

web.config 文件在某处是否仍然可用?有谁知道何时/为什么会发生这种变化?

非常感谢您提供任何信息。

【问题讨论】:

    标签: visual-studio azure web-config


    【解决方案1】:

    我会说这是去年年底 SDK 1.3 发生的变化。那时,Web 角色的默认行为从使用托管 Web 核心(IIS 的一个子集)来托管 Web 应用程序变为使用完整的 IIS。那时,Web 角色的 Web 应用程序部分已移至(通常)e:\sites\0(以及多个网站的 e:\sites\1 等)下的云中。我不知道找到找到 web.config 的路径的好方法。

    您可以简单地将 web.config 更改为“始终复制”(无需创建第二个 .config),对吗?

    【讨论】:

    • 嗯,我想知道这在今年大部分时间里是如何继续工作的(我们本月才注意到这个问题)。我们肯定处于完全的 IIS 托管模式。如果我们总是复制,那么我们将失去在发布期间在 VS 中进行配置替换的能力,不是吗?例如。 web.release.config 和 web.debug.config 等。你能提出一个解决方法吗?
    • 这是真的吗(你不能做配置替换)?我没试过。
    猜你喜欢
    • 1970-01-01
    • 2010-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-16
    • 2012-06-11
    相关资源
    最近更新 更多