ich versuche gerade Tikiwiki auf dem frisch freigeschaltetend webspace zu installieren, leider meckert das script etwas:
Warning: tempnam() [function.tempnam]: open_basedir restriction in effect. File() is not within the allowed path(s): (/users/rpgtiki/temp:/users/rpgtiki/www:/etc/php/lib) in /users/rpgtiki/www/lib/init/initlib.php on line 101
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /users/rpgtiki/www/lib/init/initlib.php:101) in /users/rpgtiki/www/tiki-setup_base.php on line 278
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /users/rpgtiki/www/lib/init/initlib.php:101) in /users/rpgtiki/www/tiki-setup_base.php on line 278
header already sent
ist es möglich die open_basedir restriction anzupassen? Damit denke ich das auch die anderen fehlermeldungen verschwinden sollten.
/** Return system defined temporary directory.
* In Unix, this is usually /tmp
* In Windows, this is usually c:\windows\temp or c:\winnt\temp
* \static
*/
function tempdir() {
static $tempdir;
if (!$tempdir) {
$tempfile = tempnam(false,'');
$tempdir = dirname($tempfile);
@unlink($tempfile);
}
return $tempdir;
}
Ich bin mir unklar, was der Fehler ist. Diese Funktion benutzt ein Workaround, bei dem tempnam() gezwungen wird, auf das System-Default zurückzufallen, auf das User keinen Zugriff haben. Allerdings macht die Fehlermeldung so keinen Sinn. Naja, weniger, als sie machen sollte. o_O
Das ist auch etwas, das die PHP-Entwickler versäumt haben. Eine Einstellung für das Temp-Verzeichnis. @TwoFace: Ich kann dir ein nicht-portables Workaround anbieten. Nicht die beste Lösung, aber immerhin eine.
function tempdir() {
static $tempdir;
if (!$tempdir) {
$tempdir = ini_get('upload_tmp_dir');
}
return $tempdir;
}
Blöderweise würde hier die neue Funktion sys_get_temp_dir() auch nicht funktionieren, da sie hier auch /tmp zurückgibt.