Why Does IIS 6.0 Return an HTTP 500.19 Error

Problem

When Browsing to IIS content in IE we see the following error message:

The data is invalid.

Reviewing the IIS web logs we see  that IIS has sent an HTTP Status Code of 500 with a sub-status code of 19.

#Software: Microsoft Internet Information Services 6.0
#Version: 1.0
#Date: 2006-10-31 16:49:56
#Fields: date time s-sitename s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status
2006-10-31 16:49:56 W3SVC1 127.0.0.1 GET / - 80 - 127.0.0.1 Mozilla/4.0+(compatible;+MSIE+7.0;+Windows+NT+5.2;+.NET+CLR+1.1.4322;+.NET+CLR+2.0.50727;+.NET+CLR+3.0.04506.30) 500 19 13
2006-10-31 16:50:07 W3SVC1 127.0.0.1 GET /test.asp - 80 - 127.0.0.1 Mozilla/4.0+(compatible;+MSIE+7.0;+Windows+NT+5.2;+.NET+CLR+1.1.4322;+.NET+CLR+2.0.50727;+.NET+CLR+3.0.04506.30) 500 19 13
 

This can occur for both ASP and HTML content.

Cause

At least one section of the metabase is un-readable.  This could mean there is invalid XML in the metabase but more likely there is invalid data set for one or more metabase keys.  The most common metabase key to contain this invalide data is the ScriptMaps.

The explanation given for the 500.19 error is that if we do not have valid metadata for a node, we cannot serve URLs from that node, even if the data is sufficient for a certain subset of the node.

If you receive a 500.19 after making any changes to the metabase, it is probable that the changes made to the metabase make it impossible to parse at least a section of the metabase.

This typically happens when Enable Direct Meabase Edit (EnableEditWhileRunning) is allowed.

Resolution

Since this typically indicates a problem with the ScriptMaps you should focus there first. A typical script mapping should look similar to this:

.asp,C:\WINNT\system32\inetsrv\asp.dll,5,GET,HEAD,POST,TRACE

Note: There are no spaces in a script map. If a space is present please remove it.  Aditionally there should be no random strings of characters.

If all else fails restoring a know good copy of the metabase should resolve the issue.

More Information

It is important to back up the metabase frequently.  Please refer to the following KBs for more infomation:

324277 - How To Create a Metabase Backup by Using IIS 6.0 in Windows Server 2003

IIS 7.0 will also return 500.19 but the reasons are different.  Please refer to the following KBs for more infomation:

 

No Comments