14

How do I restart a single website in IIS7+ using commandline only?

Same functionality as the circled menu item in the image - but from the commandline.

enter image description here

Iisreset does not have any options to deal with individual files, and I found some ancient references to Iisweb.vbs, which seems to be outdated.

21

What you are looking for is the appcmd command. Take a look at its TechNet manual.

To list your sites out:

%windir%\system32\inetsrv\appcmd list site

To restart your site, stop it and then start it:

appcmd start site /site.name:string

or

appcmd stop site /site.name:string

  • Just a note - i was in the iisexpress directory (cd \Program Files\IIS Express) and was baffled as to where the start option had gone. Make sure you are actually using the correct web server i.e. C:\Windows\System32\inetsrv fo IIS. Just to avoid others making my mistake – Crab Bucket Sep 15 '15 at 10:03
  • Any thought why the above command would give me 'stop' is not recognized as an internal or external command, operable program or batch file.? I have verified that start and stop commands work individually, but not through piping. – dotNET Mar 1 '16 at 14:30
  • @dotNET I suppose that Wesley had in mind either start or stop, rather than piping. – laika Jan 24 at 11:48
  • 1
    @laika: aaah... sometimes we become so blind. It is so obvious now that I look at it. Thanks for pointing out. It was years ago though, don't even remember what I was doing. :) – dotNET Jan 24 at 13:44
  • 1
    Here's an example of calling this (for a site called 'SDL Web'): %windir%\system32\inetsrv\appcmd stop site /site.name:"SDL Web" I pasted this into a .bat file and it works a treat - thanks. – Jonathan Williams May 1 at 13:48
4

I'd personally suggest not stopping and starting sites, but recycling the associated Application Pool.

This should be closer to imperceptible for end users, while a stop/start will probably produce 503s while the site's down.

APPCMD LIST WP

APPCMD RECYCLE WP

are the command-line versions of this...

-1

List your existing web sites with:

C:\> iisweb.vbs /query

and you can then restart a specific website by executing:

C:\> iisweb.vbs /stop <website> && iisweb.vbs /start <website>
  • iisweb is no longer used in IIS 7 and beyond. – Wesley Oct 9 '11 at 0:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.