Skip to main content
Legend
September 2, 2013
Answered

CF 10 errors show Error 500 instead of normal error message

  • September 2, 2013
  • 2 replies
  • 28122 views

Hi,

Strangely, our CF 10 server has started to show "500 - Internal server error" whenever a CF error occurs, instead of the normal error message. The error is logged, but the front end shows the error 500 and nothing else. Normally, we'd see the error message and stack trace etc.

How would I troubleshoot that?

EDIT: This is a CF10 on IIS 8 Windows 2012 server, with update 11.

Regards,

Mark

Message was edited by: tribule

This topic has been closed for replies.
Correct answer David-Smith

If you previously had no issue, i.e., you would see the ColdFusion error message and stack trace, not the generic IIS screen, and then all of the sudden the generic IIS 500 error started showing, my guess would be that your web.config got overwritten either by a global change or some other local change.  I'm not sure how you had it set up before, but if you want to completely bypass the standard IIS 500 error msg and use your own built-in ColdFusion error (or simply see the ColdFusion "grey box") then you need to have this line <httpErrors existingResponse="PassThrough" /> somewhere in your web.config, like this:

<?xml version="1.0" encoding="UTF-8"?>

<configuration>

  <system.webServer>

    <httpErrors existingResponse="PassThrough" />

  </system.webServer>

</configuration>

There is a whole thread on this topic over here:  http://forums.adobe.com/message/5388861

This goes for 404 as well as 500 handling.  Not sure how IIS 8 differs from 7.5 but I would think these concepts are similar.  Hopefully I'm understanding your problem correctly.  I dealt with all this when switching from CF9 on IIS 6 to CF10 on IIS 7.5.

2 replies

Inspiring
November 18, 2013

If you have the web config issue working, then try this. I had the exact same issue and I found this solution posted by a good samaritan:

In the CF Administrator, go to the "Settings" section. You'll see "Settings" in the left menu near the top.

If there is a checkmark in the area labeled "Enable HTTP status codes", remove it. Go to the bottom of the page and click on "Submit Changes."

When I did this, my errors including line numbers appeared again.

profit11
Participant
August 10, 2015

brilliant! thank you! worked for me on:

Version  11,0,05,293506 

Tomcat Version  7.0.54.0 

Edition  Enterprise   

Operating System  Windows Server 2012   

OS Version  6.2   

Anit_Kumar
Community Manager
Community Manager
September 3, 2013

Hello tribule,

Thank you for your post. The error 500 is a generic error thrown by IIS. IIS received the request; however, an internal error occurred during the processing of the request. The root cause of this error depends on which module handles the request and what was happening in the worker process when this error occurred.

One possibility is, IIS was not able to access the web.config file for the Web site or application. Please check the permissions.

The handlers might be causing the issue. Please remove the connector. Make sure you launch wsconfig with Run as Administrator while remove/adding connector. Check in the IIS manager for handlers, cgi restriction for connector dll entry (isapi_redirect.dll) and remove them manually if exist. Then only recreate the connector.

Also, please tune your application by applying the steps mentioned at http://blogs.coldfusion.com/post.cfm/tuning-coldfusion-10-iis-connector-configuration

Hope it helps.

Regards,

Anit Kumar

tribuleAuthor
Legend
September 5, 2013

Anit, in IIS8 there is an ISAPI Filters section. For our site it lists "tomcat" and a path to C:\ColdFusion10\cfusion\wsconfig\1\isapi_redirect.dll but there is no delete button. How do we delete the filter in order to recreate the connector?

Unless we have a <cfheader name="Connection" value="Close"> in our application, the 404 error page will not work. This was a bug that update 11 should have fixed.

David-SmithCorrect answer
Participating Frequently
September 5, 2013

If you previously had no issue, i.e., you would see the ColdFusion error message and stack trace, not the generic IIS screen, and then all of the sudden the generic IIS 500 error started showing, my guess would be that your web.config got overwritten either by a global change or some other local change.  I'm not sure how you had it set up before, but if you want to completely bypass the standard IIS 500 error msg and use your own built-in ColdFusion error (or simply see the ColdFusion "grey box") then you need to have this line <httpErrors existingResponse="PassThrough" /> somewhere in your web.config, like this:

<?xml version="1.0" encoding="UTF-8"?>

<configuration>

  <system.webServer>

    <httpErrors existingResponse="PassThrough" />

  </system.webServer>

</configuration>

There is a whole thread on this topic over here:  http://forums.adobe.com/message/5388861

This goes for 404 as well as 500 handling.  Not sure how IIS 8 differs from 7.5 but I would think these concepts are similar.  Hopefully I'm understanding your problem correctly.  I dealt with all this when switching from CF9 on IIS 6 to CF10 on IIS 7.5.