Version: unspecified (using KDE 4.5.0) OS: Linux I installed ownCloud from git on a shared LAMP hosting and opened it to do the first run setup (as described in the wiki). After having entered all the necessary details into the first run form (choosing a MySQL DB) and hitting "Save", I get the following error messages. The next time I open the owncloud website I get once again an empty first run form. Warning: tempnam() [function.tempnam]: open_basedir restriction in effect. File(/tmp) is not within the allowed path(s): (/home/:/usr/share/php/:/server/db-admin/src/:/server/db-admin/etc/phpmyadmin/config/:/tmp/php-uploads/) in [HTMLROOT- privacy, you know ;)]/owncloud/inc/lib_base.php on line 588 Warning: unlink() [function.unlink]: Unable to access in [HTMLROOT]/owncloud/inc/lib_base.php on line 593 MDB2_Schema Error: schema parse error: Parser error: File could not be opened. - Unknown Shouldn't be to difficult too fix but I don't speak PHP ;) Reproducible: Always
The problem is, that PHP wants to save temporary data to /tmp, which is not allowed (/tmp is not in on of the folders given). You should ask your hoster to change the php-temp-directory to something like /tmp/php-uploads and perhaps add a link to this bugreport ;).
There are quite some places where ownCloud will (try to) use /tmp to store temporary files. A way to work around it might be for owncloud to check if there is a folder in /tmp which is in the allowed paths (/tmp/php-uploads in this case) and store it's files there instead.
@Robin: the script does not use /tmp hardcoded but uses the value from the php-config, as far as i understood the sys_get_temp_dir funktion. Trying to guess such values from the allowed paths will possibly make things worse ;)
But if we can get the list of the allowed paths, we can check if one of those is a subfolder of the folder that sys_get_temp_dir returns. If that is the case, we can probably use that folder for temporary storage
(In reply to comment #4) > But if we can get the list of the allowed paths, we can check if one of those > is a subfolder of the folder that sys_get_temp_dir returns. > If that is the case, we can probably use that folder for temporary storage Uh? IMO that does not really make sense. When sys_get_temp_dir returns an folder that is not writable that is an error which should not happen on a normal php-configuration. This has to be fixed by the hoster, not some wired workaround-assumptions.
Thanks :) I'll talk to my hoster!
Well, at least, I think the installer should display a nice message instead of going on. (This bug can be closed, can't it ?)