Plesk allows you to control settings for each domains virtual host container (subdomains are also configured in the same way).

To override the default configuration you will need to make the new vhost file, which should appear in the following locations:

  • domain/conf/vhost.conf
  • domain/subdomain/conf/vhost.conf

The vhost.conf file must not contain the entire vhost container but only its contents.  So this means that you cannot make changes to the IP address or port the virtual host container is listening on in this file, but you can override the PHP open_basedir setting and other directory settings.  You could even put ReWrite rules in here like you would in your .htaccess.  Anything that goes in a vhost container for Apache can go in here.

To turn off open_basedir for example set:

php_admin_value open_basedir none

Once you have made the overrides and additions you need to tell Plesk about the changes using one of the following commands.

Use /usr/local/psa/admin/sbin/websrvmng --vhost-name=domain.com to update a particular domain or /usr/local/psa/admin/sbin/websrvmng --vhost-name=subdomain.domain.com to change a particular subdomain.

Update (15/03/2012): In Plesk version 10+ you would use /usr/local/psa/admin/sbin/httpdmng --reconfigure-domain domain.com

Should you need to update all the sites at once then you can execute the following command /usr/local/psa/admin/bin/websrvmng -a Be warned though that this will update all settings files and wipe anything you may have changed in /domain/conf/httpd.include.

Once you have executed the above commands the settings will be effective immediately with no need for restarting the Apache process.