Professional Documents
Culture Documents
Contact • Articles
○ ○
Ad-free experience sponsored by:
ASPOSE - the market leader of .NET and Java APIs for file formats – natively work with DOCX, XLSX,
PPT, PDF, images and more
Here's an oldie but goodie, that keeps coming up for me rather frequently. I've
been working with IIS on Windows for a loooong time and I have a number of
products that go way back that run on IIS. As a result I deal with a lot of
support issues around IIS and people who install IIS run an application for
years, have their servers eventually break down and then have to reinstall years
after their last install. And a lot of times the people who set up the system are
long gone.
The chief complaints I hear frequently is that it's a pain to get IIS to install
initially with all the right components. I tend to agree - especially on Server
https://weblog.west-wind.com/posts/2017/May/25/Automating-IIS-Feature-Installatio... 10/10/2018
Automating IIS Feature Installation with Powershell - Rick Strahl's Web Log Page 2 of 10
versions installing IIS through the insanely user hostile Server Manager
interface is a pain.
But there's an easier, quicker and repeatable way if you're willing to dive into
the command line or create and run a small Powershell script.
Enter Enable-WindowsOptionalFeature
Apparently many people are unaware that in recent versions of Windows -
using Powershell - you can automate the IIS Features installation using a few
simple Powershell Commandlet calls. It's as easy as creating a small PowerShell
script file and letting her rip.
# * Make sure you run this script from a Powershel Admin Prompt!
# * Make sure Powershell Execution Policy is bypassed to run these scripts:
# * YOU MAY HAVE TO RUN THIS COMMAND PRIOR TO RUNNING THIS SCRIPT!
Set-ExecutionPolicy Bypass -Scope Process
https://weblog.west-wind.com/posts/2017/May/25/Automating-IIS-Feature-Installatio... 10/10/2018
Automating IIS Feature Installation with Powershell - Rick Strahl's Web Log Page 3 of 10
https://weblog.west-wind.com/posts/2017/May/25/Automating-IIS-Feature-Installatio... 10/10/2018
Automating IIS Feature Installation with Powershell - Rick Strahl's Web Log Page 4 of 10
You can tweak and fiddle with the features you actually need for IIS, but the
above is pretty standard for my base installs.
To see all the features available related to IIS you can use:
https://weblog.west-wind.com/posts/2017/May/25/Automating-IIS-Feature-Installatio... 10/10/2018
Automating IIS Feature Installation with Powershell - Rick Strahl's Web Log Page 5 of 10
Import-Module WebAdministration
Once installed it's easy to create a new WebSite and Application Pool.
md "c:\Web Sites\NewWebSite"
https://weblog.west-wind.com/posts/2017/May/25/Automating-IIS-Feature-Installatio... 10/10/2018
Automating IIS Feature Installation with Powershell - Rick Strahl's Web Log Page 6 of 10
Figure 1 - Powershell ISE lets you get Intellisense on commands and live object instances
The Intellisense in the editor and the command window gives you live property
values on commands and even live objects as shown in the Figure 1 which
makes it relatively easy to figure out settings. For the rest the various cmd-lets
and admin objects are well documented and searchable.
Summary
None of this is new of course, but it's always good to be reminded that you can
automate installation and configuration of IIS relatively easily. This is especially
true since I just this week I heard from several people how much of a pain IIS
can be to install and get up and running. It doesn't have to be this way... the
tools are there.
https://weblog.west-wind.com/posts/2017/May/25/Automating-IIS-Feature-Installatio... 10/10/2018
Automating IIS Feature Installation with Powershell - Rick Strahl's Web Log Page 7 of 10
Is this content useful to you?
Share on: Consider making a small
donation to show your support.
Very useful Rick! For some reason IIS does not come as standard
with the very useful feature to import an application as a ZIP file
Rich
and Microsoft make it super hard to find the link to download that
May 26, 2017
add-on. It forces you to first install the "Web Platform Platform
Installer Platform" or something, and then find an obscure link. I'm
guessing that can't be done from PowerShell, but it sure would be
useful.
Rich,
SomeUser
Web Deploy can be downloaded without WebPI
May 27, 2017
(https://www.iis.net/downloads/microsoft/category/deploy-and-
migrate). While it is possible to use PowerShell (or any other
scripting toy, or msiexec) to get the bits installed, the installer's user
interface is the only documented way to fully customize the setup.
https://weblog.west-wind.com/posts/2017/May/25/Automating-IIS-Feature-Installatio... 10/10/2018
Automating IIS Feature Installation with Powershell - Rick Strahl's Web Log Page 8 of 10
I second the need for a powershell script for IIS 6. I'm currently
writing an automated installation for BizTalk 2016 and part of the
Chad
prerequisites are:
October 18, 2017
In Wold Wide Web Services, expand Security and also check: Basic
Authentication Windows Authentication
https://weblog.west-wind.com/posts/2017/May/25/Automating-IIS-Feature-Installatio... 10/10/2018
Automating IIS Feature Installation with Powershell - Rick Strahl's Web Log Page 9 of 10
I enabled the following feature and then the above worked:
NetFx4Extended-ASPNET45
Also, I prepended my script with this (to make sure it only ran if IIS
was missing):
https://weblog.west-wind.com/posts/2017/May/25/Automating-IIS-Feature-Installatio... 10/10/2018
Automating IIS Feature Installation with Powershell - Rick Strahl's Web Log Page 10 of 10
Add a Comment
https://weblog.west-wind.com/posts/2017/May/25/Automating-IIS-Feature-Installatio... 10/10/2018