What is IIS? A Basic Tutorial of the Windows Web Server
Last Updated : 01/15/2020
IIS (which stands for Internet Information Services or Internet Information Server) also known as Windows web server is available on most versions of Microsoft Windows operating systems and takes second place in overall usage behind Apache HTTP Server on the internet.
It will host websites, web applications and services needed by users or developers. Many versions have shipped as far back as IIS 1 on Windows 3 and with nearly every new Windows OS a new IIS version follows.
Versions and History
Microsoft Windows Server 2003 or IIS 6 is the oldest version you would want to run for anything outside of a hobby or testing, which does supports IPV6 as well as modern security measures.
However in a professional environment IIS 8.5 or 10 (Still in Beta) will receive official software updates for years to come and support more modern applications and needs.
- IIS 6 or Windows Server 2003 is no longer receiving any updates from Microsoft but supports IPV6 and most security measures needed for simple hosting needs on a budget.
- IIS 7 shipped with Windows Vista and has better support for the .NET framework and some security enhancements over IIS 6.
- IIS 7.5 Shipped with Windows 7 and added support for TLS 1.1 and 1.2. Extended support will end in 2020 this is the oldest version receiving any support officially from microsoft.
- IIS 8 also known as Microsoft Web Server 2012 began supporting SNI or associating SSL to hostnames instead of IP addresses and multicore scaling. Support will last until 2023.
- IIS 8.5 shipped with Windows 8.1 and has new features such as Enhanced logging capabilities and Dynamic Site Activation.
- IIS 10 is currently in beta and will support modern technology such as HTTP/2 and powershell 5.0.
If you are a business owner consider purchasing the newest version your hardware can run.
IIS 8.5 is currently the most stable and secure version as of this writing, however once out of beta ISS 10 will become your best bet. If you are hosting a basic website on your own and cannot afford a newer version consider Apache Server instead of anything older than IIS 6.
IIS allows you to create sites, applications, and virtual directories to share information with users over the Internet or internally on an intranet such as a home network.
This concept did exist in older versions of IIS, but several changes took place in IIS 7 and changed the definition and functionality of this concept.
A virtual directory is a name that you specify in IIS and that maps to a physical directory on a server similar to how DNS maps a URL to an IP address.
The directory name becomes part of the application allowing users to navigate to a website or application and gain access to the content hosted on the server.
This content could be a website itself or media such as photos or videos within a web application or site.
In IIS 6.0, virtual directories and applications were considered to be separate objects even though they were the same thing.
An application was not a physically separate object from a virtual directory instead an app was really just a virtual directory on its own with one of the following properties in its metabase: AppFriendlyName, AppRoot, AppIsolated, and AppPoolID.
The only issue was creating a system where applications in one pool would not be allowed to communicate with applications in another pool on the same server.
In IIS 7.0 and above virtual directories and applications are separate objects and functioned in that manner.
They exist in a hierarchical relationship such as a website may contain one or more applications, an application contains one or more virtual directories, and a virtual directory maps to a physical directory on a computer.
Log files record various actions on your server they are typically located at:
The service name should be replaced by the service you are looking for more info on in detail.
It will show everything from the date and time something occurred to what IP address and how much data was sent both to and from your server.
If you see – in the output the data was not recorded and you may need to adjust the service if you need this information.
Typically your server will use port 80 for HTTP traffic however this can be adjusted to meet your needs or the needs of another application on your computer.
You can find a full list of ports and the purpose they each serve here. Changing a port within IIS 7 to 10 is simple. First Open Internet Information Services Manager.
Second select the Web site that you want to change and n the Action pane, select Bindings.
Third click Add to add a new site binding, or click Edit to modify an existing binding and finally click ok to apply the changes.