Showing posts with label IIS. Show all posts
Showing posts with label IIS. Show all posts

Tuesday, November 3, 2015

IIS - Worker Process, ISAPI Extension, Application Pool, Web Farm & Web Garden

Application Pool:
An application pool is a group of one or more web applications that are served by a worker process(w3wp.exe) or set of worker processes.
OR
An application pool is a group of one or more worker processes, configured with common settings that serve requests to one or more applications.

Means n number of web application can be served by n number of worker process using same application pool. Applications within an application pool shares the same worker process.

You can also create multiple application pools to isolate multiple web application. This way you will be able to apply different level of security on multiple apps. Also an error in one app will never affect other applications.

Worker Process(w3wp.exe):
Application pool passes every request to worker process. Worker process (w3wp.exe) checks the URL of the request to load the correct ISAPI extension. ISAPI extensions are the IIS way to handle requests for different resources(like images, javascript, css, aspx, ashx etc). When we install asp.net, its ISAPI extension (aspnet_isapi.dll) and adds its mapping in IIS.

ISAPI Extension:
ISAPI Extensions are true applications that run on IIS. They have access to all of the functionality provided by IIS. ISAPI extensions are implemented as DLLs that are loaded into a process that is controlled by IIS. Clients can access ISAPI extensions in the same way they access a static HTML page.

Web Farm:
A Web Farm is group of servers acting as a single server. It could be a setup of multiple servers work togather to host a single website(or any other application). A load balancer can be used to devide traffic between various servers.

Web Garden:
By default each and every application pool contain single worker process. But we can change associated worker process. An application pool with multiple worker process is called Web Garden. Following is the way to manage number of worker process in IIS:

1. Go to IIS(inetmgr).

2. Click on Application Pools.
3. Right click desired Application Pool.
4. Go to Advance Settings.

5. Increase Maximum Worker Processes.

Tuesday, October 20, 2015

404.3 - IIS - Not Found The page you are requesting cannot be served because of the extension configuration

Normally this error comes when you try to run any application on IIS for the first time. This error could be with any of the following type of requests:

  1. Asp.net website - It means you are trying to run normal asp.net website.
  2. Web Service - When you try to host web service on IIS.
  3. WCS Service - When you try to host WCF Service on IIS.
To resolve this error:


  1. Click the Start button, and then click Control Panel.
  2. Click Programs, and then click Programs and Features.
  3. On the Tasks menu, click Turn Windows features on or off.
  4. In Role, select and IIS.
  5. In features, select .net framework 4.5 features > WCF Services > HTTP Activation.
  6. Save the setting.


Tuesday, October 13, 2015

IIS Error 403.14 Content listing disabled

This error is due to content listing IIS default settings. By default IIS does not allow to show directory listing of server. This is due to security permissions. This can be resolved by checking enabled directory listing checkbox in website in IIS. However it is not suggested to do so. simply write complete url of the page to access page. For example use http://localhost/default.aspx instead of http://localhost/

Saturday, August 22, 2015

HTTP Error 500.19 - Internal Server Error IIS

This error is due to application pool of website. You might map wrong application pool to website. Please follow the below steps to check.
  1. Open inetmgr.exe(IIS).
  2. Click advance settings of website by clicking advance settings link in right side panel.
  3. Check application pol of website.
  4. Now click application pool.
  5. Double click website's application pool(or right click and properties of app pool).
  6. Application pool should be same as website name.

The configuration section 'system.web.extensions' cannot be read because it is missing a section declaration

This error is due to version of application pool. You need to update version of app pool from v2 to v4. Follow the below steps:

  1. Open IIS.
  2. Right click website and click settings to check the application pool name of website. OR
  3. Click website, click advance settings in right side panel.
  4. Now click application pool.
  5. Double click website's application pool(or right click and properties of app pool).
  6. Change version in dropdown from v2 to v4.

Friday, August 21, 2015

IIS - Handler “PageHandlerFactory-Integrated” has a bad module “ManagedPipelineHandler” in its module list - ASP.net

This error is due to asp.net installation on IIS. To resolve this error you need to install asp.net on IIS. For this you need to execute aspnet_regiis.exe -i command. First location this exe. It should be on following location:
On Windows 32 bit:
C:\Microsoft.NET\Framework\v4.0.21006\aspnet_regiis.exe -i
On Windows 64 bit:
C:\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i