首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ApplicationHost.xdt在Azure中的应用

ApplicationHost.xdt在Azure中的应用
EN

Stack Overflow用户
提问于 2015-07-15 10:17:54
回答 1查看 7.9K关注 0票数 6

如何在Azure web应用程序中更改applicationHost.config?我试着:

代码语言:javascript
复制
using (ServerManager serverManager = new ServerManager())
{
    Microsoft.Web.Administration.Configuration config = serverManager.GetApplicationHostConfiguration();
    Microsoft.Web.Administration.ConfigurationSection webLimitsSection = config.GetSection("system.applicationHost/webLimits");

    webLimitsSection["connectionTimeout"] = TimeSpan.Parse("00:00:10");
    webLimitsSection["dynamicIdleThreshold"] = 150;
    webLimitsSection["headerWaitTimeout"] = TimeSpan.Parse("00:00:10");
    webLimitsSection["minBytesPerSecond"] = 500;

    serverManager.CommitChanges();
}

但要抓住例外:

文件名:\?\D:\Windows\system32\inetsrv\config\applicationHost.config错误:由于权限不足无法写入配置文件

EN

回答 1

Stack Overflow用户

发布于 2015-07-15 17:44:15

这样做的方法是使用引用这里的(XDT)。

对于您的场景,创建一个名为applicationhost.xdt的文件,其中包含以下内容:

代码语言:javascript
复制
<configuration  xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
  <system.applicationHost>
    <webLimits xdt:Transform="SetAttributes(connectionTimeout)"
               connectionTimeout="00:00:10" />
    <webLimits xdt:Transform="SetAttributes(dynamicIdleThreshold)"
           dynamicIdleThreshold="150" />
    <webLimits xdt:Transform="SetAttributes(headerWaitTimeout)"
               headerWaitTimeout="00:00:10" />
    <webLimits xdt:Transform="SetAttributes(minBytesPerSecond)"
               minBytesPerSecond="500" />
  </system.applicationHost>
</configuration>

然后,使用FTP客户端(我使用FileZilla),将其复制到站点文件夹(而不是www.root),用于您的web应用程序。

最后,重新启动您的web应用程序,您可以从Azure门户进行此操作。

您可以使用Kudu站点扩展验证这些更改是否应用。登录Kudu后,转到Debug Console (CMD)窗口,向下钻入Logfiles文件夹,然后进入Transform文件夹。

在Transform文件夹中,您将看到一个"*scm.log“文件,该文件将显示转换。应该是这样的。

票数 20
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31427635

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档