Thanks for that Andreas,
I have actually now managed to sort it and I think this is probably the most correct and cleanest way of doing it for Plesk users. It also means you can still run PHP as an Apache module.
Unfortunately, as you can see from my above post, I didn't have the same amount of luck with 1&1 as you did with youyr host. Needless to say, I will not be using that hosting company again. But for those who are stuck with them, here is how to get your Moodle server working with plesk.
Basically, you need to set a bespoke directive for your domain to allow your files in /var/www/vhosts/yourdomain/httpdocs to write to your directories above httpdocs. You do this by creating a vhost.conf file and then instructing Plesk to include it in your vhosts httpd.include file:
(If you don't have permissions, you may need to ask your hosting provider to do this for you - good luck if you are with 1&1, I woldn't hold your breath!)
1. Place your moodledata just above your httpdocs:
/var/www/vhosts/yourdomain/moodledata
2. CHOWN the directory to username:psaserv
username is the username set up for the virtual host and psaserv is the Apache group set up by Plesk
3. Set the permissions for moodledata as normal (777)
4. create the file in /var/www/vhosts/yourdomain/conf/vhost.conf
This is where you can put any of your own Apache config options.
5. Add the following lines:
<Directory /var/www/vhosts/yourdomain/httpdocs/>
php_admin_value open_basedir "/var/www/vhosts/yourdomain/httpdocs:/var/www/vhosts/yourdomain/moodledata"
</Directory>
6. When you've saved that you need to instruct Plesk to update the httpd.include file
/usr/local/psa/admin/sbin/websrvmng -u --vhost-name=yourdomain
That got it working for me! 