Move uploaded file and paths


#1

I am attempting to run zencart and the install went great, but I am getting the following error when trying to upload an image file (I have zencart installed on another site that I am hosting under my main account.):

Warning: move_uploaded_file(): open_basedir restriction in effect. File(/home/mcs5/mcs.com/wszen/images/imgBack.jpg) is not within the allowed path(s): (/dh/web/phpmyadmin:/tmp:/usr/local/tmp:/dh/solidclient:/usr/local/lib/php:/home/mcs5:/home/.quota/mcs5) in /home/.quota/mcs5/mcs.com/wszen/admin/includes/classes/upload.php on line 112

I’m aware of this info from DH re:
“open_basedir restrictions prevent any of PHP’s file opening commands from working on any files outside of /home/youruser. Files BELOW that directory WILL WORK:
/home/youruser/phpstuff/some/more/dirs/file.info IS OK! PHP CAN OPEN IT!
If you need to open files in another user’s home directory (assuming both are under you account, of course!) contact TS and they will happily make an exception for you.”

Can someone please point me in the right direction to resolve this. Is this an instance where I have to contact TS and have them fix it?


#2

In case other clueless newbies like me stumble upon this problem, this is the answer I received from Tech. Support which seems to have solved the problem.

Tech Support wrote:

There’s a bug with PHP and mounted home directories (which is what we do) that makes open_basedir incorrectly report these errors. There are two solutions.

  1. You can change your site to run PHP as a CGI application, rather than as an Apache module. This is done from Manage Domains, when you click the Edit link for the domain’s hosting.

or

  1. Change the path in your scripts or your config.php file to include the filer name, such as home/.example/yourname/yoursite.com/etc… The
    correct filer name can be seen in the error message above.