How to Install IIS on Windows 11

To install IIS on Windows 11, press Windows key + R, type optionalfeatures, check Internet Information Services, and select OK. When Windows finishes, open a browser and go to http://localhost. The blue IIS welcome page means the web server is running.

These steps cover Windows 11 Home, Pro, Enterprise and Education, and they also match Windows 10, which uses the same Windows Features window. You’ll install IIS (Internet Information Services, the web server built into Windows), add components such as ASP.NET, use PowerShell instead of the checkbox list, open IIS Manager, let other devices reach your site, and fix the problems that stop localhost from loading. The steps follow Microsoft Learn’s Install IIS and ASP.NET Modules guide, applied to the Windows 11 feature names.

Before You Start

  • An administrator account. Windows asks for administrator approval when you change Windows features. On a work or school PC, your IT department may block this.
  • No download needed. IIS ships with Windows, so you don’t install it from a website. Avoid third-party “IIS installer” downloads.
  • Port 80 free. IIS listens on port 80 for regular web traffic. If another web server, such as Apache or a developer tool, already uses that port, plan to stop it or give IIS a different port.
  • A reason to run it. IIS adds a background service. Install it when you’re building or testing websites, or when an app you use lists IIS as a requirement.
Illustration of the steps to install IIS on Windows 11
Illustration: the steps to install IIS from Windows Features in Windows 11.

Install IIS From Windows Features

  1. Press Windows key + R, type optionalfeatures, and press Enter. You can also search Start for Turn Windows features on or off, or go to Control Panel > Programs > Turn Windows features on or off. Approve the administrator prompt. The Windows Features window opens.
  2. Find Internet Information Services and check its box. The box shows a solid fill instead of a check mark, which means Windows selected the default set of web server parts rather than every option.
  3. Select the plus sign next to Internet Information Services if you need extra components, such as ASP.NET. The next section explains which ones to pick.
Windows Features list with Internet Information Services checked and expanded
Expand Internet Information Services to see its components. A filled checkbox means that some subfeatures are selected.
  1. Select OK. Windows searches for the required files and applies the changes, which usually takes a minute or two. “Windows completed the requested changes” appears.
  2. Select Restart now if Windows asks. If it doesn’t ask, select Close.
  3. Open a browser and go to http://localhost. The IIS welcome page loads from the Default Web Site, which confirms that IIS is installed and running.
Recreated browser with http localhost highlighted and the blue Internet Information Services default welcome-page layout, logos and stock-photo tiles replaced in gray
Open http://localhost to check that IIS serves its default welcome page. This recreation follows a verified IIS blue welcome layout; logos and stock-photo areas are replaced with gray placeholders. Windows and Windows Server branding can differ. The example is illustrative and does not show an active server on this PC.

The default selection includes the parts most static websites need: Default Document, Static Content, HTTP Errors, Directory Browsing, HTTP Logging, Request Filtering and the IIS Management Console (the IIS Manager app). It does not include FTP, ASP.NET or any authentication method other than anonymous access.

Choose Extra Components

Expand Internet Information Services > World Wide Web Services to see the optional parts. Check only what your site or app needs, since every feature you add is one more thing running on the PC.

Component Where to find it Use it for
ASP.NET 4.8 Application Development Features Classic ASP.NET Web Forms and MVC apps
ASP.NET 3.5 Application Development Features Older ASP.NET 2.0 to 3.5 apps
ASP Application Development Features Classic ASP pages (.asp files)
CGI Application Development Features Running PHP through FastCGI
WebSocket Protocol Application Development Features Live chat or real-time apps
Windows Authentication Security Intranet sites that sign people in with their Windows account
Basic Authentication Security A simple user name and password prompt
FTP Service FTP Server File transfers to the PC

When you select ASP.NET 4.8, Windows also turns on .NET Extensibility 4.8, ISAPI Extensions and ISAPI Filters, which it depends on. For ASP.NET 3.5, Microsoft says to install .NET Framework 3.5 (includes .NET 2.0 and 3.0) first; it’s near the top of the same Windows Features list.

If you don’t see an option such as Windows Authentication, your Windows edition may not include it. Windows 11 Home can’t join a work domain, so intranet sign-in features are a better fit for Pro or higher.

Apps that run on top of IIS usually publish their own required component list. Follow that list exactly, because a missing feature is the most common reason an app fails after setup.

The same Windows Features window also controls Hyper-V, so if a virtual machine app conflicts with it, you can disable Hyper-V in Windows 11 there.

ASP.NET Core apps need one more step

Modern ASP.NET Core apps don’t use the ASP.NET 4.8 checkbox. They need Microsoft’s .NET Hosting Bundle, which installs the .NET runtime and the ASP.NET Core Module for IIS. Install IIS first. If you installed the Hosting Bundle before IIS, run the bundle installer again to repair it.

Install IIS With PowerShell

PowerShell does the same job as the checkbox list and is handy when you set up several PCs. Right-click Start, select Terminal (Admin), and approve the prompt. Then run this command to install the web server, its core features and IIS Manager:

Enable-WindowsOptionalFeature -Online -FeatureName IIS-WebServerRole, IIS-WebServer, IIS-ManagementConsole -All

The -All switch also turns on the parent features each one depends on, as Microsoft’s Enable-WindowsOptionalFeature reference explains. When it finishes, the output shows RestartNeeded. If it says True, restart the PC.

To add ASP.NET 4.8 with its dependencies, run:

Enable-WindowsOptionalFeature -Online -FeatureName IIS-ASPNET45 -All

The feature is still named IIS-ASPNET45 even though Windows 11 installs ASP.NET 4.8. To confirm IIS is installed, run the following and look for State : Enabled:

Get-WindowsOptionalFeature -Online -FeatureName IIS-WebServerRole

Open IIS Manager and Add Your Own Page

  1. Select Start and type IIS.
  2. Open Internet Information Services (IIS) Manager. You can also type inetmgr in the Run box. IIS Manager opens with your PC listed under Connections.
  3. Expand your PC, then Sites. You’ll see Default Web Site.
Recreated IIS Manager Connections detail with fictional SAMPLE-PC and Sites expanded, Default Web Site selected and the context menu Explore command highlighted
In IIS Manager, expand your PC and Sites, then select Default Web Site. Explore in its context menu opens the site folder. This recreated shared Connections and first-menu-command detail uses a fictional PC name; the remaining menu, feature grid and Actions pane are outside the crop.
  1. Open File Explorer and go to C:\inetpub\wwwroot. That’s the Default Web Site’s folder.
  2. Save a file named index.html in that folder (Windows asks for administrator approval). Reload http://localhost and your page appears instead of the welcome page, because IIS serves a default document before its own iisstart.htm.

To host a second site from another folder, right-click Sites in IIS Manager, select Add Website, enter a site name, choose the folder as the Physical path, and give it a port that’s free, such as 8080. You then open it at http://localhost:8080.

IIS can also handle file transfers. To add the FTP Service and set it up with FTPS encryption, follow the steps for creating an FTP server in Windows 11.

Let Other Devices Reach Your Site

By default, http://localhost only works on the PC running IIS. To open the site from another computer or phone on your network:

  1. Find the IIS PC’s IP address in Settings > Network & internet, under the properties of your Wi-Fi or Ethernet connection (look for IPv4 address).
  2. Set the network to Private on that same properties page. Windows Defender Firewall is stricter on Public networks.
Two separate recreated Wi-Fi properties details with Private network selected and fictional IPv4 address 192.168.1.50 highlighted, other address values gray
Use Private network only on a network you trust, and find the PC’s IPv4 address in its connection properties. These are separate enlarged profile and lower-properties details. SampleHomeWiFi and 192.168.1.50 are fictional examples; other network addresses are hidden in gray. The controls are in different parts of the page.
  1. Make sure the firewall allows web traffic. IIS setup normally adds an inbound rule called World Wide Web Services (HTTP Traffic-In). If it’s missing or off, allow a specific inbound port through the Windows 11 firewall for TCP port 80.
  2. On the other device, open a browser and enter http:// followed by the IP address, for example http://192.168.1.25.

From a second Windows PC, the Telnet Client in the same Windows Features window can confirm whether port 80 is reachable. Don’t forward router ports to a home PC unless you understand the security risks of putting a server on the internet.

Illustration comparing IIS and IIS Express on Windows 11
Illustration: when to use full IIS and when IIS Express is enough.

IIS vs. IIS Express

IIS Express is a separate, lightweight version of IIS that Microsoft makes for developers. It doesn’t run as a service and doesn’t need administrator rights for most tasks; you start it from Visual Studio or the command line and it stops when you close it. Full IIS runs as a Windows service, starts with the PC, supports FTP, and can serve other devices. Choose IIS Express for quick testing in Visual Studio, and full IIS when you need a server that’s always on or matches a production setup.

If localhost Doesn’t Load

  • Check the service. Press Windows key + R, type services.msc, and make sure World Wide Web Publishing Service shows Running. If it doesn’t, right-click it and select Start.
  • Check the site. In IIS Manager, select Default Web Site and look at the Actions pane on the right. If Start is available, the site is stopped; select it.
  • Check port 80. If the site won’t start, another program may be using the port. Stop that program, or select the site, choose Bindings, and change the port.
  • HTTP Error 404.3. IIS doesn’t know how to serve that file type, usually because a feature such as ASP.NET isn’t installed. Add it in Windows Features.
  • HTTP Error 500.19. The site’s web.config file uses a setting or module that isn’t installed. Install the module the app requires.
  • HTTP Error 403.14. The folder has no default page and directory browsing is off. Add an index.html file.
  • Changes don’t show up. Restart IIS from an administrator Terminal:
iisreset

IIS writes a log for each request to C:\inetpub\logs\LogFiles, in a separate folder for each site. Microsoft’s IIS logging guide shows how to change the location. The status codes in the log often explain an error faster than the browser does.

Frequently Asked Questions

Does IIS work on Windows 11 Home?

Yes. Internet Information Services appears in Windows Features on Home, Pro, Enterprise and Education. Some options, such as Windows Authentication, may be missing on Home.

How do I remove IIS?

Open the Windows Features window, clear the Internet Information Services box, select OK, and restart. Your files in C:\inetpub stay unless you delete them. In PowerShell, you can run:

Disable-WindowsOptionalFeature -Online -FeatureName IIS-WebServerRole

Is IIS free?

Yes. It’s included with Windows at no extra cost.

Can IIS run PHP?

Yes. Turn on CGI under Application Development Features, then install PHP for Windows and map .php files to it with FastCGI in IIS Manager.

Should I install IIS on my PC?

Only if you need it, for example to build or test websites or to run an app that requires it. Most people don’t, and leaving it off means one less service listening on port 80.

Once your server is running, you’ll need a way to move site files onto it. The steps for uploading files to a web server with FileZilla walk through connecting and transferring files.