php.ini read only from /opt/local/var/db/php5
Steve Edwards
killshot91 at comcast.net
Tue Nov 17 07:38:57 PST 2009
Scott Haneda wrote:
> On Nov 16, 2009, at 10:55 PM, Steve Edwards wrote:
>
>> I'm using and Apache and PHP ports, a
>
> What version of Apache, and what version of php are you using?
>
> I am at php5 @5.3.0_1+apache2+macosx
PHP 5.2.9 and Apache 2.2 on Snow Leopard
>
>> nd my php.ini is not being read from where it should be. According
>> to my phpinfo(), it is loading php.ini from /opt/local/etc/php5,
>
> That is where mine is read from.
>
>> yet any changes I make in that file make no effect, and the Loaded
>> Configuration File is set to (none).
>
> I am assuming you restart apache, in some way or another, after you
> make these changes?
Yes, that is correct.
>
>> I noticed a while ago that my other config files (APC.ini,
>> imagick,ini, xdebug.ini, memcache.ini) were not read unless they were
>> in /opt/local/var/db/php5,
>
> I have in /opt/local/var/db/php5
> curl.ini gd.ini imap.ini mcrypt.ini zlib.ini
>
> For the php5 Portfile for version 5.3.0, if you look at about line 60'ish
> set phpinidir ${prefix}/etc/${my_name}
> set extraphpinidir ${prefix}/var/db/${my_name}
>
> So it is as intended to have the extras in the /opt/local/var/db/php5
> location.
>
> However, /opt/local/etc/php5 should be where php.ini is read from,
> assuming we are on the same version of php installed by the same
> Portfile. I see any changes with no issue as long as I reload.
>
>> and that seems to be the case with php.ini. Once I put a copy in
>> /opt/loca/var/db/php5, any changes I made in that file are shown in
>> phpinfo, and Loaded Configuration File shows
>> /opt/local/var/db/php5/php.ini.
>
> I think it should work fine in the extraphpinidir, but it would be
> nice to discover why your install is not reading from the normal
> phpinidir.
>
> Can you show the output of `php -i` ? Specifically, seeing the
> configure options would be helpful...
>
> Mine has:
> '--with-config-file-path=/opt/local/etc/php5'
> '--with-config-file-scan-dir=/opt/local/var/db/php5'
>
> I wonder what your 'with-config-file-path' is set to. Even going to
> back 5.2.10, the phpinidir is set to the same,
> http://trac.macports.org/browser/trunk/dports/lang/php5/Portfile?rev=53529
>
Mine are:
'--with-config-file-path=/opt/local/etc/php5'
'--with-config-file-scan-dir=/opt/local/var/db/php5'
>
> Some more snips, for which you should be equivalent...
> Configuration File (php.ini) Path => /opt/local/etc/php5
> Loaded Configuration File => /opt/local/etc/php5/php.ini
> Scan this dir for additional .ini files => /opt/local/var/db/php5
>
> Additional .ini files parsed => /opt/local/var/db/php5/curl.ini,
> /opt/local/var/db/php5/gd.ini,
> /opt/local/var/db/php5/imap.ini,
> /opt/local/var/db/php5/mcrypt.ini,
> /opt/local/var/db/php5/zlib.ini
>
> It would be good to see the line that says 'Loaded Configuration File'
> when the file is non existent, when it only exists in prefix/etc and
> when it only exists in prefix/var and when it exists in both.
When it exists in /opt/local/etc/php5 and NOT in /opt/local/var/db/php5:
(none)
When it exists in both places
/opt/local/var/db/php5/php.ini
When it exists only in /opt/local/var/db/php5/php.ini \:
/opt/local/var/db/php5/php.ini
>
> Is your httpd.conf file, assuming Apache 2, have uncommented, at added
> the line:
> LoadModule php5_module modules/libphp5.so
That line as already there.
>
> And do you also have the line:
> Include /opt/local/apache2/conf/extras-conf/mod_php.conf
>
Also already there.
>> So my questions are:
>> 1) Why is the one in /opt/loca/var/db/php5 the only one that works?
>> 2) Why does Configuration File (php.ini) Path show as
>> /opt/local/etc/php when that is not the file that is loaded?
>> 3) Can my setup be fixed so that the /opt/local/etc/php/php.ini is
>> the file that is used?
>
> I do not know how much you rely on your machine being up and running,
> and what other custom changes you have made. If this is just a
> version issue, it should be a simple sudo port upgrade php5, or maybe
> you are version 4, in which case a bit of the above is not right.
>
> You could do an uninstall and reinstall of php5, that should work it
> all out. Something like:
> sudo port uninstall php5
> sudo port install php5
>
> Please add the variants you need, and backup and move aside any ini or
> other config files that you may want t keep around.
I only want 5.2, not 5.3. Can I install a port with just that version?
Thanks.
Steve
More information about the macports-users
mailing list