php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #11006 include_path in php.ini broken
Submitted: 2001-05-21 19:20 UTC Modified: 2001-12-07 09:10 UTC
From: reitsmac at denison dot edu Assigned:
Status: Not a bug Package: PHP options/info functions
PHP Version: 4.0.5 OS: Solaris 7,8
Private report: No CVE-ID:
 [2001-05-21 19:20 UTC] reitsmac at denison dot edu
'./configure' '--with-apxs=/usr/local/apache/sbin/apxs' '--with-mysql=/usr/local' '--with-imap=/var/installs/imap-2000c' '--with-zlib=/usr/local' '--with-gettext=/usr' '--with-mm=/usr/local' '--with-xml' '--with-dom' '--with-expat-dir=/usr/local' '--with-sablot=/usr/local' '--with-ldap=/usr/local' '--with-db3=/usr/local' '--with-oci8' '--enable-ftp'

php.ini include_path set to '.:/usr/local/lib/php'
if include_path is set in php.ini then it is ignored except for informational purposes; phpinfo reports what include_path in php.ini contains but scripts cannot find files. Default include_path works. Setting include_path via http.conf php_value works. 

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2001-05-21 19:22 UTC] sniper@php.net
Are you sure your php.ini is even used by PHP ?
Where is it located in your system?

--Jani

 [2001-05-21 21:22 UTC] reitsmac at denison dot edu
Yes...for example, I changed include_path to '.:/usr/local/lib/php:/usr/local/lib/php/pear' in php.ini. phpinfo faithfully reported the change but files contained in the path could not be found.
 [2001-05-21 21:39 UTC] reitsmac at denison dot edu
Here's a link to a broken web server:
http://charlie1.test.denison.edu/horde/test.php
It's the Horde project test page to determine if the functionality is present necessary to support horde. At the bottom of the page note that PEAR is broken. Yet the phpinfo link at the top of the page shows the include_path is '.:/usr/local/lib/php'. I can fix the problem by removing include_path from php.ini and depending on the default path. 
 [2001-05-23 03:50 UTC] sniper@php.net
Works for me just fine. 

Is that path readable by the user the Apache runs as?

--Jani

 [2001-05-23 09:46 UTC] cynic@php.net
Is there PEAR.php in /usr/local/lib/php/ ? You must include the directory that contains this file, so if /usr/local/lib/php/ contains pear/, you should make it

set_ini( 'include_path' , '.:/usr/local/lib/php/pear' )
 [2001-05-23 12:26 UTC] reitsmac at denison dot edu
Let me emphasize that the problem is not that PEAR is broken. The problem is that the include_path is being ignored if and only if it is set in the php.ini file. If I comment out the include_path in php.ini then the master include_path (which is also '.:/usr/local/lib/php') is used and pathless includes and PEAR work just fine.
 [2001-05-23 14:44 UTC] cynic@php.net
can you put echo ini_get( 'include_path' ) somewhere in that script?
 [2001-05-23 15:02 UTC] reitsmac at denison dot edu
Yes. 755. Most includes are in the same directory. So with the broken include_path reading '.:/usr/local/lib/php' scripts cannot read config.inc but have no trouble with ./config.inc.
 [2001-05-23 15:10 UTC] reitsmac at denison dot edu
I have added echo ini_get( 'include_path' ) after the PEAR section of http://charlie1.test.denison.edu/horde/test.php
 [2001-12-07 09:10 UTC] sterling@php.net
include_path works, administrators don't.
 
PHP Copyright © 2001-2014 The PHP Group
All rights reserved.
Last updated: Wed Apr 23 07:02:14 2014 UTC