7

When I make any changes in php.ini located in /usr/local/lib on centos, the changes don't appear to be applied, for example, when I clear all the content of php.ini and restart Apache everything works fine...

I searched for php.ini and it is in one place in system... what's the problem? How can I fix this?

  • How did you search for this file? What command did you use? What paths did you look into? – Khaled Jan 13 '13 at 14:17
  • @Khaled i searched with this way: whereis php.ini – Fcoder Jan 13 '13 at 14:19
  • How many php.ini's do you have (E.g. check with find / -name php.ini -print). – Hennes Jan 13 '13 at 14:21
  • Try find /etc -name php.ini. – Khaled Jan 13 '13 at 14:23
  • i have only one at: /usr/local/lib/php.ini – Fcoder Jan 13 '13 at 14:24
12

if you're unsure what php.ini is being used, create a new file in your webfolder, name it phpinfo.php for example , with the following content

<?php
phpinfo();
?>

then open the url in your browser (http://www.example.com/phpinfo.php). it will show the path to the php.ini being used.

when you have identified the correct file, make your desired changes, and be sure to remove the leading ; in case there is one to activate the setting.

restart apache and reload the phpinfo page, your changed setting should now show up. if it doesn't, make sure you don't have a .htaccess file in your webroot that overrides php settings.

  • i do this an this is output: Configuration File (php.ini) Path /usr/local/lib Loaded Configuration File /usr/local/lib/php.ini – Fcoder Jan 13 '13 at 14:28
  • what value did you try to change? did you remove the leading ';' to activate the setting? – Gryphius Jan 13 '13 at 14:38
  • Isn't omitting the ending tag of php ?> a good practice? – Omar Tariq Aug 12 '16 at 14:38
2

You may want to read these threads:

hints:

  1. What is "Loaded Configuration File" in php_info output? -> check that you edit the correct ini-file.
  2. check for multiple occurences of your setting in the same file.
  3. Gryphius´s hint is not bad either: Uncomment the setting! (remove the leading ";")
  4. Check permissions on the ini file. The web server and php-cgi/php-fpm need read access.
  5. php 5 and later: Do not only restart the web server, but also the php-fpm service before testing.
  • I just switched to fast-cgi and restarting fpm did the trick, thanks. – Dave May 16 at 7:16
1

Follow this:

Create a file inside your webroot naming it whatever you want. I usually prefer x.php

 # vim x.php

The contents of the file should be this:

<?php
phpinfo();
?>

Now open this file in your browser like this:

http://server_ip/x.php

This will show you the location of the php.ini your apache is using. Edit that php.ini and it will work.

  • i do this an this is output: Configuration File (php.ini) Path /usr/local/lib Loaded Configuration File /usr/local/lib/php.ini – Fcoder Jan 13 '13 at 14:29
  • That means you are using this file only. Any changes to this file will be reflected in Apache. You can test the same with the same URL. Make some change in some variable in this php.ini, and that will be reflected in x.php file in browser. – GeekRide Jan 13 '13 at 14:42
0

you might have php.ini file in your webroot.

0

cannot comment here yet, but: Does it work if you keep the changes and restart Apache?

If so, the reason is probably that PHP runs as an Apache module.
If you want changes to have effect without restarting the web server, use php-cgi instead.

This page explains installation and configuration; search the page for "as an Apache Module" or for "PHP 5 as a CGI Binary".

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.