How to Install IIS on a Windows VPS

Internet Information Services (IIS) is Microsoft's web server, built into Windows Server, used for hosting websites, ASP.NET applications, and APIs.

Prerequisites

  • Windows Server VPS with Administrator access

Installing IIS via Server Manager (GUI)

  1. Open Server Manager → Manage → Add Roles and Features
  2. Click through to Server Roles
  3. Check Web Server (IIS)
  4. Add required features when prompted, then click Install

Installing IIS via PowerShell (Faster)

Install-WindowsFeature -Name Web-Server -IncludeManagementTools

Verifying the Installation

Get-WindowsFeature -Name Web-Server

Or open a browser on the server and visit http://localhost — you should see the default IIS welcome page.

Allowing HTTP/HTTPS Through the Firewall

New-NetFirewallRule -DisplayName "Allow HTTP" -Direction Inbound -Protocol TCP -LocalPort 80 -Action Allow
New-NetFirewallRule -DisplayName "Allow HTTPS" -Direction Inbound -Protocol TCP -LocalPort 443 -Action Allow

Testing from Outside the Server

http://YOUR_SERVER_IP

Key File Locations

PathPurpose
C:\inetpub\wwwrootDefault website root
C:\Windows\System32\inetsrvIIS management tools
IIS Manager (GUI)Site and application pool configuration

Opening IIS Manager

inetmgr

Run this from the Start menu or Run dialog for the graphical management console.

Adding a New Website

  1. Open IIS Manager
  2. Right-click Sites → Add Website
  3. Set a site name, physical path (e.g. C:\inetpub\wwwroot\mysite), and binding (hostname and port)
  4. Click OK

Installing the URL Rewrite Module (Commonly Needed)

Download and install from Microsoft's IIS website — required by many modern web applications for clean URLs and reverse proxy scenarios.

Common Errors

"HTTP Error 500.19" — usually a web.config misconfiguration; check the exact error detail shown on the error page for the specific module/setting causing it.

Site not accessible from outside the server — verify the firewall rules were added and the site binding matches the correct port/hostname.

"503 Service Unavailable" — the application pool has stopped; restart it via IIS Manager or:

Start-WebAppPool -Name "DefaultAppPool"

Best Practices

  • Use separate application pools per site for isolation
  • Keep IIS and Windows Server updated
  • Enable HTTPS for production sites — see How to Install an SSL Certificate on IIS

FAQ

Can IIS host non-.NET applications?
Yes — with the appropriate modules/handlers, IIS can serve static content, PHP, Node.js (via reverse proxy or iisnode), and more, though it's most commonly paired with ASP.NET applications.

Related Articles

  • How to Install an SSL Certificate on IIS
  • How to Configure Windows Firewall on a Windows VPS
  • How to Deploy an ASP.NET Application on IIS
  • iis, install iis, windows web server, windows server
  • 0 Пользователи нашли это полезным
Помог ли вам данный ответ?

Связанные статьи

How to Connect to a Windows VPS via Remote Desktop (RDP)

Remote Desktop Protocol (RDP) provides full graphical access to a Windows Server VPS, letting you...

How to Secure RDP on a Windows VPS

RDP's default configuration (standard port, password authentication, unlimited login attempts)...

How to Create a New Administrator User on Windows Server

Using only the built-in Administrator account for all management tasks is risky. Creating a...

How to Install Windows Updates on a Windows VPS

Keeping Windows Server updated is essential for security and stability. This guide covers...

How to Configure Windows Firewall on a Windows VPS

Windows Defender Firewall controls which network connections are allowed to and from your server....