So Plesk is pretty much my daily nightmare but I'm stuck with it. Today's practical joke on me is that it won't seem to load changes I make to the php.ini. I'm trying to get a file's contents (via the appropriately named file_get_contents()) and am coming up against the open_basedir restrictions - a line which I have removed from ALL .ini files listed in phpinfo(). There is now NO reference whatsoever to open_basedir in any of the loaded .ini's. I've restarted Apache more times than I care to think of.

The script loads the contents of two extensionless log files and displays them in a browser. Oddly, it loads one of the scripts just fine even though it also is not permitted by the open_basedir config item.

The error continues and phpinfo() still shows it as being a configured path.

Does anyone have any idea what may be the cause of this?


EDIT: I've just grep'd my entire server storage, there are officially no open_basedir lines in any *.ini files (not even commented) which is making me think that this configuration is cached somewhere that persists after reloading Apache?


Are you 100% sure that you run your sites in FastCGI and not mod_php? Because when mod_php is effective, open_basedir can easily be in Apache files and not in .ini.

Rather than grep all .ini files on a server, I would suggest to click site name in Plesk and

  1. check which mode is used (mod_php or FastCGI)
  2. go to "PHP Settings" tab and tune open_basedir to whatever value you want. Plesk will modify required files appropriately for both mod_php and FastCGI modes
  • Thank you sir. I had to disable FastCGI owing to .htaccess issues ages ago and I will admit that I did not know this made php.ini redundant. Solved my problem perfectly.
    – SLD
    Jan 14 '13 at 20:27

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