Habe nun eines der bekannten SAFE_MODE Probleme gelöst.
Lösung wie folgt in der Datei class.t3lib_div.php Zeile 2520 folgende Änderung:
Komplette Funktion mkdir($theNewFolder) ersetzen durch Funktion:
function mkdir($theNewFolder) {
$theNewFolder = preg_replace('|/$|','',$theNewFolder);
$host="YOUR_HOST"; // EXAMPLE: "www.typo3.net"
$user="FTP_USER"; // EXAMPLE: "typo3"
$pass="FTP_PASS"; // EXAMPLE: "typopass"
$folder1="LOCAL_PHP_URL_TO_MAIN_FOLDER"; // EXAMPLE: "/var/www/web41/html/typo3/"
$folder2="LOCAL_FTP_URL_TO_MAIN_FOLDER"; // EXAMPLE: "/html/typo3/"
// ANTI SAFE_MODE - Anfang by DasNets | anoris. eK
$ftpserver=ftp_connect($host);
$ftpverbindung=ftp_login ($ftpserver, $user, $pass);
$theNewFolder2=str_replace($folder1, $folder2, $theNewFolder);
echo $theNewFolder."<br>".$theNewFolder2;
if(ftp_mkdir($ftpserver, $theNewFolder2))
{
ftp_site($ftpserver, "CHMOD 0777 ".$theNewFolder2);
return TRUE;
}
else
{
// ANTI SAFE_MODE - Ende by DasNets | anoris. eK
if (@mkdir($theNewFolder, octdec($GLOBALS['TYPO3_CONF_VARS']['BE']['folderCreateMask'])))
{
chmod($theNewFolder, octdec($GLOBALS['TYPO3_CONF_VARS']['BE']['folderCreateMask'])); //added this line, because the mode at 'mkdir' has a strange behaviour sometimes
if($GLOBALS['TYPO3_CONF_VARS']['BE']['createGroup'])
{ // skip this if createGroup is empty
chgrp($theNewFolder, $GLOBALS['TYPO3_CONF_VARS']['BE']['createGroup']);
}
return TRUE;
}
}
}
// EDIT-Anfang
Bei der Funktion ist darauf zu achten, dass $folder1 das lokale Root-Verzeichnis ist und $folder2 das Lokale FTP-Verzeichnis. Beide Pfade müssen ins das selbe Verzeichnis verweisen, in welchem typo3 installiert ist.
// EDIT-Ende
Damit sind dann schon so einige Probleme gelöst. Gibt zwar noch ein paar andere Probleme mit SAFE_MODE, aber das ist erstmal das wichtigste.
Beschäftige mich erst seit 3 Tagen mit TYPO3 und hab daher halt noch nicht alle Probleme entdeckt, die sich bei der Nutzung von TYPO3 mit SAFE_MODE on ergeben.
Weitere SAFE_MODE-Fixes kann ich auch auf Anfrage machen.