I'm used to serving sites from Apache, but I am now forced to use an IIS server.
A number of my PHP pages are returning error 500 and I can't debug because IIS is suppressing the error messages. I've tried ini_set('display_errors',1);
in code but to no avail.
Errors are shown on some sites but not the one in particular that I want to debug so I don't think it is a global PHP setting, but rather something to do with the site settings for that site.
I can't find a clear answer as to how to enable the displaying PHP errors.
I've found this link but am not sure where to find "system.webServer->httpErrors".
How can I enable the displaying errors in PHP under IIS?
How about logging them instead?
Edit php.ini and set
And either
error_log = syslog
to log to the Windows Event log, orerror_log = location/of/logfile
to log to a file.Assuming you have all the right settings in your php.ini file
Thanks to last comment on this page
If you are using php with IIS:
I found out, that it's a good idea to access an IIS-hosted page with InternetExplorer for testing.
In my case the php-error-logs where clean - got no clue from there.
I got a plain non-expressive "500 - internal server error" when connecting with firefox/chrome:
...but a more usefult error message ("HTTP Error 500.0 - Internal Server Error C:\PHP\php-cgi.exe - The FastCGI process exited unexpectedly") when using InternetExplorer:
Maybe also try connecting on from http://localhost on the server itself.