[asp.net] What does 'IISReset' do?

On IIS 6, what does an IIS reset do?

Please compare to recycling an app pool and stopping and starting an ASP.NET web site.

If you replace a DLL or edit/replace the web.config on an ASP.NET web site is that the same as stopping and starting that web site?

This question is related to asp.net iis iis-6

The answer is


IISReset restarts the entire webserver (including all associated sites). If you're just looking to reset a single ASP.NET website, you should just recycle that AppDomain.

The most common way to reset an ASP.NET website is to edit the web.config file, but you can also create an admin page with the following:

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

Here's a blog post I wrote with more info: Avoid IISRESET in ASP.NET Applications


Here what's technet has to say about iisreset

You might need to restart Internet Information Services (IIS) before certain configuration changes take effect or when applications become unavailable. Restarting IIS is the same as first stopping IIS, and then starting it again, except it is accomplished with a single command.


It stops and starts the services that IIS consists of.

You can think of it as closing the relevant program and starting it up again.


IISReset restarts the entire webserver (including all associated sites). If you're just looking to reset a single ASP.NET website, you should just recycle that Application Domain.


It operates on the whole IIS process tree, as opposed to just your application pools.

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.

You can find more information about which services it affects on the Microsoft docs.


Application Pool recycling restarts the w3wp.exe process for that application pool, hence it will only affect web sites running in that application pool.

IISReset restarts ALL w3wp.exe processes and any other IIS related service, i.e. the NNTP or FTP Service.

I think changing web.config or /bin does not recycle the whole application pool, but I'm not sure on that.


Editing the web.config file or updating a DLL in the bin folder just recycles the worker process for that application, not the whole pool.


When you change an ASP.NET website's configuration file, it restarts the application to reflect the changes...

When you do an IIS reset, that restarts all applications running on that IIS instance.


Examples related to asp.net

RegisterStartupScript from code behind not working when Update Panel is used You must add a reference to assembly 'netstandard, Version=2.0.0.0 No authenticationScheme was specified, and there was no DefaultChallengeScheme found with default authentification and custom authorization How to use log4net in Asp.net core 2.0 Visual Studio 2017 error: Unable to start program, An operation is not legal in the current state How to create roles in ASP.NET Core and assign them to users? How to handle Uncaught (in promise) DOMException: The play() request was interrupted by a call to pause() ASP.NET Core Web API Authentication Could not load file or assembly 'CrystalDecisions.ReportAppServer.CommLayer, Version=13.0.2000.0 WebForms UnobtrusiveValidationMode requires a ScriptResourceMapping for jquery

Examples related to iis

ASP.NET Core 1.0 on IIS error 502.5 CS1617: Invalid option ‘6’ for /langversion; must be ISO-1, ISO-2, 3, 4, 5 or Default Publish to IIS, setting Environment Variable IIS Manager in Windows 10 The page cannot be displayed because an internal server error has occurred on server The service cannot accept control messages at this time NuGet: 'X' already has a dependency defined for 'Y' Changing project port number in Visual Studio 2013 System.Data.SqlClient.SqlException: Login failed for user "This operation requires IIS integrated pipeline mode."

Examples related to iis-6

How to allow download of .json file with ASP.NET IIS Request Timeout on long ASP.NET operation Mailbox unavailable. The server response was: 5.7.1 Unable to relay for [email protected] Login failed for user 'DOMAIN\MACHINENAME$' Socket transport "ssl" in PHP not enabled What causes an HTTP 405 "invalid method (HTTP verb)" error when POSTing a form to PHP on IIS? How to redirect a URL path in IIS? What does 'IISReset' do?