ID: 42749 Updated by: [EMAIL PROTECTED] Reported By: gabe at mudbugmedia dot com -Status: Open +Status: Feedback Bug Type: *General Issues Operating System: Linux proto 2.6.20-hardened-r5 PHP Version: 5CVS-2007-09-24 (snap) New Comment:
What MPM is used in Apache? Note: php_admin_* sets the ini option not to be modifiable by .htaccess or in scripts using ini_set(). Can you try and create a small test environment with this information? We need sample config to be able to reproduce this ourselves. Apparently it's some .htaccess file and/or script changing error_reporting() using either ini_set() or error_reporting() for it. Also using @ affects it.. Previous Comments: ------------------------------------------------------------------------ [2007-09-25 19:50:32] gabe at mudbugmedia dot com I've been running a httperf on a sample script testing when setting error_reporting in a <VirtualHost> block via php_admin_value vs. php_value and watching the error log. php_admin_value does NOT have problems setting the level php_value DOES have problems setting the level ------------------------------------------------------------------------ [2007-09-25 14:01:03] gabe at mudbugmedia dot com I have some vhosts that have the following within the <VirtualHost> block: php_admin_value error_reporting "E_ALL ^ E_NOTICE" However, this problem is occurring on a vhost that does not use any php_admin_values, either globally or in the <VirtualHost> block. I have not had troubles overriding any of the other .ini values that I know of. I have a few sites that have the following .htaccess: php_flag short_open_tag on php_flag register_globals on php_value error_reporting "E_ALL ^ E_NOTICE" During page loads when the error_reporting doesn't get properly overwritten with the new value, the short_open_tag and register_globals are always properly set and are not suffering the same problem. A good portion of my sites also change the include_path via ini_set(), and I haven't had a single issue with any of those. It appears that this is specific to the error_reporting ini value and isn't affecting any of the other ini values. It should be noted that sites that use a php_admin_value error_reporting in a <VirtualHost> block have been reported (yet?) to have any issues with setting a new local value. ------------------------------------------------------------------------ [2007-09-25 09:20:53] [EMAIL PROTECTED] Is it just error_reporting ini option you get this problem with? It is a bit hard to debug, the ini system being what it is.. Do you use php_admin_* flags anywhere in your httpd.conf (or included parts of it) ?? ------------------------------------------------------------------------ [2007-09-24 21:02:55] gabe at mudbugmedia dot com In the comments of the other bug, this is mentioned: >When error_reporting was overwritten with ADMIN privileges it cannot be changed anymore by the @ operator :) If I add something like: @include 'doesnotexist'; at the end of the test file, no warning will be issued even when the problem behavior is occurring. Usage of the '@' symbol for error suppression is completely unaffected by this bug. ------------------------------------------------------------------------ [2007-09-24 20:56:17] gabe at mudbugmedia dot com I extended my reproduction code to check ini_set(), which suffers the same behavior. Code: <?php var_dump(error_reporting()); var_dump(error_reporting(E_ALL ^ E_NOTICE ^ E_USER_NOTICE)); trigger_error('This should not be seen', E_USER_NOTICE); echo $a; // should cause a notice var_dump(error_reporting()); var_dump(ini_set('error_reporting', E_ALL ^ E_NOTICE ^ E_USER_NOTICE ^ E_USER_WARNING)); var_dump(error_reporting()); trigger_error('This should not be seen', E_USER_NOTICE); echo $a; // should cause a notice var_dump(error_reporting()); ?> Output: int(6143) int(6143) Notice: This should not be seen in /home/gabebug/public_html/error_reporting_tests.php on line 5 Notice: Undefined variable: a in /home/gabebug/public_html/error_reporting_tests.php on line 6 int(6143) bool(false) int(6143) Notice: This should not be seen in /home/gabebug/public_html/error_reporting_tests.php on line 11 Notice: Undefined variable: a in /home/gabebug/public_html/error_reporting_tests.php on line 12 int(6143) ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/42749 -- Edit this bug report at http://bugs.php.net/?id=42749&edit=1