|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2001-01-10 10:31 UTC] jon at serf dot 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. PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sun Oct 26 06:00:02 2025 UTC |
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.