Emran Hasan

Turning local open_basedir off

Oct 12, 2007

I have been trying to remove the open_basedir directive from my php configuration to allow seamless CURL operation in my server (Plesk based).

As the first step, I edited the /etc/php.ini file and set the directive to none. It made the master value for open_basedir to none. But even if, the local value is set and was causing enough trouble.

I googled it, carried out a few methods, but nothing worked. The last try got me the result I needed:

1. Created a new httpd.conf file in my domains conf folder: /var/www/vhosts/mydomain.org/conf

2. Put the following lines there:

<Directory /var/www/vhosts/mydomain.org/httpdocs>
php_admin_value open_basedir "none"
</Directory>

3. Updated Plesk configuration: # /usr/local/psa/admin/sbin/websrvmng -v -a

4. Restarted apache: apachectl restart

5. Voila!

I hope this helps somebody out there.

There are 2 comments in this article:

  1. 3/04/2008Larry says:

    You are right but there is one problem, at least with my Plesk version there was.

    If you open httpd.include you see at the top DO NOT MODIFY THIS, USE vhosts.conf You also see this is the file setting open_basedir value.

    I tried doing your httpd.conf didn’t work so when I saw the warning message in httpd.include regarding vhost.conf I tried it.

    I put your exact code in vhost.conf and did the 2 commands you said to do after, and it worked.

    Thanks,
    Larry

  2. 1/10/2011Troy says:

    Amazing, I wasted some time trying to find this solution. Thanks so much for taking the time to post. Just saved my bacon on a tight deadline… lol

    Cheers

Write a comment: