73

在 IIS 6 上,IIS 重置有什么作用?

请与回收应用程序池以及停止和启动 ASP.NET 网站进行比较。

如果您替换 DLL 或编辑/替换 ASP.NET 网站上的 web.config,是否与停止和启动该网站相同?

4

9 回答 9

80

IISReset 停止并重新启动整个 Web 服务器(包括非 ASP.NET 应用程序)
回收应用程序池只会影响在该应用程序池中运行的应用程序。
在 Web 应用程序中编辑 web.config 只会影响该 Web 应用程序(仅回收该应用程序)。
在机器上编辑 machine.config 将回收所有正在运行的应用程序池。

IIS 将监视应用程序的 /bin 目录。每当在这些 dll 中检测到更改时,它将回收应用程序并重新加载这些新 dll。它还以相同的方式监视 web.config 和 machine.config,并对适用的应用程序执行相同的操作。

于 2008-08-22T21:40:26.767 回答
28

IISReset 重新启动整个网络服务器(包括所有关联的站点)。如果您只是想重置单个 ASP.NET 网站,您应该只回收该 AppDomain。

重置 ASP.NET 网站的最常见方法是编辑 web.config 文件,但您也可以使用以下内容创建管理页面:

public partial class Recycle : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        HttpRuntime.UnloadAppDomain();
    }
}

这是我写的一篇博文,其中包含更多信息:在 ASP.NET 应用程序中避免 IISRESET

于 2008-08-22T21:43:34.793 回答
26

它在整个 IIS 进程树上运行,而不仅仅是您的应用程序池。

C:\>iisreset /?

IISRESET.EXE (c) Microsoft Corp. 1998-1999

Usage:
iisreset [computername]

    /RESTART            Stop and then restart all Internet services.
    /START              Start all Internet services.
    /STOP               Stop all Internet services.
    /REBOOT             Reboot the computer.
    /REBOOTONERROR      Reboot the computer if an error occurs when starting,
                        stopping, or restarting Internet services.
    /NOFORCE            Do not forcefully terminate Internet services if
                        attempting to stop them gracefully fails.
    /TIMEOUT:val        Specify the timeout value ( in seconds ) to wait for
                        a successful stop of Internet services. On expiration
                        of this timeout the computer can be rebooted if
                        the /REBOOTONERROR parameter is specified.
                        The default value is 20s for restart, 60s for stop,
                        and 0s for reboot.
    /STATUS             Display the status of all Internet services.
    /ENABLE             Enable restarting of Internet Services
                        on the local system.
    /DISABLE            Disable restarting of Internet Services
                        on the local system.
于 2008-08-22T21:43:58.020 回答
6

应用程序池回收会重新启动该应用程序池的 w3wp.exe 进程,因此它只会影响在该应用程序池中运行的网站。

IISReset 重新启动所有 w3wp.exe 进程和任何其他 IIS 相关服务,即 NNTP 或 FTP 服务。

我认为改变web.config/bin不回收整个应用程序池,但我不确定。

于 2008-08-22T21:40:58.853 回答
2

它停止和启动 IIS 所包含的服务。

您可以将其视为关闭相关程序并重新启动它。

于 2008-08-22T21:39:03.727 回答
1

当您更改 ASP.NET 网站的配置文件时,它会重新启动应用程序以反映更改...

当您执行 IIS 重置时,将重新启动在该 IIS 实例上运行的所有应用程序。

于 2008-08-22T21:40:13.240 回答
1

编辑web.config文件或更新文件夹中的 DLLbin只会回收该应用程序的工作进程,而不是整个池。

于 2008-08-22T21:42:46.447 回答
1

IISReset 重新启动整个网络服务器(包括所有关联的站点)。如果您只是想重置单个 ASP.NET 网站,您应该只回收该应用程序域。

于 2009-07-16T23:28:52.657 回答
0

这里 Technet 对iisreset有什么要说的

在某些配置更改生效或应用程序不可用时,您可能需要重新启动 Internet 信息服务 (IIS)。重新启动 IIS 与首先停止 IIS,然后重新启动它相同,不同之处在于它是通过单个命令完成的。

于 2008-08-22T21:54:02.957 回答