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
_______________________________________________
macports-users mailing list
[email protected]
http://lists.macosforge.org/mailman/listinfo.cgi/macports-users

Reply via email to