You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在C#中将IIS网站设置为自动延迟启动?

实现IIS网站应用程序池的自动延迟启动

注意:IIS中的自动延迟启动是应用程序池的属性,而非网站本身的属性。要实现延迟启动,需要配置目标应用程序池的启动模式,而非网站设置。

修改你的C#代码如下:

using (ServerManager iisManager = new ServerManager())
{
    // 添加网站
    Site website = iisManager.Sites.Add(name, location, port);
    website.Applications[0].ApplicationPoolName = appPoolName;
    website.ServerAutoStart = true;

    // 配置应用程序池的延迟启动
    ApplicationPool appPool = iisManager.ApplicationPools[appPoolName];
    // 如果应用池不存在,先创建(可选,根据你的业务场景调整)
    if (appPool == null)
    {
        appPool = iisManager.ApplicationPools.Add(appPoolName);
    }
    // 设置启动模式为延迟启动
    appPool.StartMode = StartMode.DelayStarted;

    iisManager.CommitChanges();
}

关键说明:

  • StartMode.DelayStarted:该枚举值对应IIS应用程序池的"延迟启动"选项,会在第一次请求到达时才启动应用程序池,而非服务器启动时立即启动。
  • 确保你的项目已引用Microsoft.Web.Administration程序集,该程序集通常位于C:\Windows\System32\inetsrv目录下。
  • 运行代码的进程需要具有IIS管理权限(如管理员权限)。

内容的提问来源于stack exchange,提问作者Tracey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 02:45:41