Hi all,
The cause of Internal Server Error 500 can be too low values for activity and request timeout in FastCGI setting on IIS.
When using IIS you can activate Failed Request Tracing Rules for your website and define a rule for only this error to analyze the exact reason. Start IIS Manager, open server-sites-your site and click Failed Request Tracing in the actions pane. Activate it and check if the path for logfiles is ok. Now click Failed Request Tracing Rules and add a rule. Select All Content (*), next select Status Code and enter 500 (400-500 is also possible), do not select Time taken and Event severity, next select only WWW Server and Area RequestNotifications (other areas can be added later if necessary). Save the rule and try to get the 500 error.
If the 500 error occurs it is logged and you can view the log with your browser. You find it in the path defined in Failed Request Tracing for your site. In the Request Summary you will see the module causing the error.
In case FastCgiModule is the reason you can change the setting in IIS. Select the server (not your site) and there you have FastCGI setting. You can see that you can select that this module shall generate a 500 error. Select the PHP version of your site and increase activity and request timeout. You can calculate it from the logfile or test with some values.
Good luck