There are many quirks which are picked up by using a website management package like Plesk. My remote Linux server has this installed by default on it, and it does simplify a lot of basic operations. It does become difficult when standard Linux / Apache information doesn’t help because Plesk rearranges things into its own way of doing things.
This has been improved in the latest version installed ( version 8 ) as the virtual hosts directory is finally under the /var/www/ directory more like a standard Apache setup.
I’ve been wanting to trial the open-source customer relationship management software, SugarOS. I kept finding a block at Install Wizard Step 2 where it did a system check and failed at accessing the PHP Session directory.
Many attempts at trying to get the PHP is_dir function to acknowledge its existence failed.
All files under a virtual host’s main httpdocs directory are by default owned by the Linux username which is the FTP username assigned when creating the domain, with a group of ‘psacln’. I tried to add the ‘apache’ group to the Linux user for that virtual host, but that didn’t help either.
A quick search for ‘Plesk PHP session writable’ on Google uncovered a relevant forum post which was on the SugarOS forums site. I also found a helpful post by Aaron Gadburry on using the vhost.conf file with Plesk to configure additional options for each Plesk virtual host. Do not try to edit the httpd.include file because Plesk will just overwrite it next time you change something with the web front-end.
So in the end, all I’ve done is added a vhost.conf file containing:
php_admin_value open_basedir "/var/www/vhosts/DOMAINNAME/httpdocs:/var/lib/php/session"
and then ran the command that Aaron mentioned:
/usr/local/psa/admin/sbin/websrvmng -u --vhost-name=domain.com
You should now be able to get past that pesky step 2. Happy CRM-ing.
You will need to amend the original vhost.conf to add the BlowFish directory if you want to set up Incoming Email mailbox monitoring. I found a forum post about getting a blank page after setting up an incoming mailbox which helped fix it.
It should now read:
php_admin_value open_basedir "/var/www/vhosts/DOMAINNAME/httpdocs:/var/lib/php/session:/Blowfish"