Bug #8638 Updated: PHP handles permission problems ungracefully rather than letting Apache do it

From: Date: Wed, 16 May 2001 11:43:58 +0000
Subject: Bug #8638 Updated: PHP handles permission problems ungracefully rather than letting Apache do it
Groups: php.dev 
Request: Send a blank email to php-dev+get-55469@lists.php.net to get a copy of this message
ID: 8638 User Update by: jon@serf.org Status: Closed Bug Type: Apache related Operating system: Linux 2.2.17 PHP Version: 4.0.5 Description: PHP handles permission problems ungracefully rather than letting Apache do it That's a complete red herring; if file perms prevent your script from even being read, it can't get as far as calling set_error_handler(). However, after some further digging, I have discovered a workaround; if you set auto_prepend_file in your php.ini file, and call set_error_handler in that, it will be triggered when the error above is generated. And if you put code in it like: if (($level == E_WARNING) && ($file == "Unknown") && ($line == 0)) { header("Location: /path/to/errordocument.html"); exit; } then this will emulate Apache's normal behaviour when it finds a file with bad permissions. It's only a workaround, but as no-one seems interested in fixing the underlying problem, it'll have to do. Previous Comments: --------------------------------------------------------------------------- [2001-05-16 02:47:05] sniper@php.net RTFM: http://www.php.net/manual/en/function.set-error-handler.php --------------------------------------------------------------------------- [2001-05-08 09:17:25] jon@serf.org Still happens with php 4.0.5. --------------------------------------------------------------------------- [2001-04-02 05:07:42] jon@serf.org Yes, still happens with php4.04pl1. --------------------------------------------------------------------------- [2001-03-31 08:08:34] cynic@php.net Does it still happen? IIRC it was fixed. --------------------------------------------------------------------------- [2001-01-10 10:31:13] jon@serf.org I'm using Apache 1.3 with the config line: AddType application/x-httpd-php php When the permissions on any .php file are not set correctly for Apache to read them, the error: Warning: Failed opening '/path/to/page.php' for inclusion (include_path='/path/to/phplib') in Unknown on line 0 appears. The same problem still occurs with include_path='.:/path/to/phplib' in php.ini. This is user-hostile - what ought to happen would be that Apache's normal 403 error mechanism should be invoked. --------------------------------------------------------------------------- The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online. Full Bug description available at: http://bugs.php.net/?id=8638

« previous php.dev (#55469) next »