Solved

PHP Error Reporting under IIS 6.0

Posted on 2008-10-06
4
2,093 Views
Last Modified: 2013-12-13
Hello,

I'm having an issue getting errors to output to the browser with PHP under IIS 6.0 on Windows Server 2003. I've set the php.ini file in the Windows directory by uncommenting:

error_reporting  =  E_ALL
dispaly_errors = On

And I've also tried setting the values at runtime in my scripts with:

ini_set('display_errors', 0)
ERROR_REPORTING(E_ALL);

But I'm unable to throw any errors. I'm basically using an includes statement in a script to a file that doesn't exist, but the script still executes error free; no suppression directives, etc used anywhere.  Thinking it's an IIS thing since I never ran into this under Apache.

Any insight would be greatly appreciated.

0
Comment
Question by:jmoriarty
  • 2
  • 2
4 Comments
 
LVL 2

Accepted Solution

by:
AdiF earned 500 total points
ID: 22656325
Please try specifying an error log file in your php.ini and check it to ensure that errors are being logged.

Is the rest of the PHP script outputting content to your browser, or are you receiving an HTTP 500 Internal Server Error message?

Try also setting display_startup_errors to On because I think an include() might be considered a startup routine thing hehe.

Try also running a phpinfo(); script and check the output to ensure that the path for the php.ini is the file you are editing.

If you are using ISAPI or FastCGI you should restart the IIS service every time you modify your php.ini for full changes to take effect.
0
 

Author Comment

by:jmoriarty
ID: 22656454
Hi AdiF,

Interestingly, no, the script outputs nothing when an error is present, even if I do something simple like the attached code snippet. If I remove the require statement, the echo output's fine however.  No internal server either though, just a blank, white screen.

PHP is configured as an ISAPI module, and I did restart IIS after each change. I restarted again just now to triple check, same affect.

Double checked phpinfo(); and it is pulling from the C:\Windows .ini, so we're okay there, and startup errors are actually on. display_startup_errors = On

 no errors are logged, either. error_logging = On in .ini, and
error_log = "C:/PHP/logs/err.log" directive set as well.

Strange, eh?

<?php
 
require("filedoesnotexist.php");  
 
// Get the current include path settings from php config file
$path = ini_get('include_path');
echo $path
 
?>

Open in new window

0
 

Author Comment

by:jmoriarty
ID: 22660976
Found the problem - I was completely misreading the phpinfo() output. The loaded config file was actually in another directory. D'oh.

Thanks for the help either way.

0
 
LVL 2

Expert Comment

by:AdiF
ID: 22664888
...*snickers*  :)  hehehe.  troubleshooting is a pain-- finding out you've overlooked a troubleshooting candidate is even more annoying :P

no problem!
0

Featured Post

Comprehensive Backup Solutions for Microsoft

Acronis protects the complete Microsoft technology stack: Windows Server, Windows PC, laptop and Surface data; Microsoft business applications; Microsoft Hyper-V; Azure VMs; Microsoft Windows Server 2016; Microsoft Exchange 2016 and SQL Server 2016.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Build an array called $myWeek which will hold the array elements Today, Yesterday and then builds up the rest of the week by the name of the day going back 1 week.   (CODE) (CODE) Then you just need to pass your date to the function. If i…
Password hashing is better than message digests or encryption, and you should be using it instead of message digests or encryption.  Find out why and how in this article, which supplements the original article on PHP Client Registration, Login, Logo…
This tutorial will teach you the core code needed to finalize the addition of a watermark to your image. The viewer will use a small PHP class to learn and create a watermark.
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …

825 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question