Beste mensen,
Sinds kort host ik m'n website bij een hosting waarbij de Safe Mode aan staat. Jep, het is een betaalde hostingprovider. Bij het installeren van een fotoboek script kom ik in de knoei met deze safemode, o.a. bij functies als mkdir(), open_dir() en move_uploaded_file().
Ik heb een folder:
../public/fotoboek
In die folder wil ik via web-based forms nieuwe folders (albums) kunnen aanmaken, waarin vervolgens ook weer web-based foto's geupload kunnen worden.
Bij zowat elke handeling verschijnen er warnings van "SAFE MODE restriction" als:
[PHP] Safe_Mode & mkDir();
[PHP] [php]opendir
[PHP] [PHP]Upload problemen in safemode *
Op php.net is het volgende te lezen over move_uploaded_file():
Als antwoord op een mailtje van me naar de hosting, vertelde ze mij dat de functies 100% zeker wel mogelijk zijn in Safe Mode, mits de folders de juiste rechten (chmod) en de juiste owner (chown) hebben.
Ik ben druk bezig geweest met chmod(). echter, het lijkt me niet slim de boel op 777 te zetten, en tevens werkt chmod() in php ook niet. De enige manier om chmod() uit te voeren is dus via FTP. Dan zou ik dus alsnog voor elk nieuw aangemaakt album opnieuw via FTP de chmod rechten moeten geven.
Zelfde geld voor chown(), dat werkt ook niet via php zelf. In PuTTY heb ik al geprobeerd chown uit te voeren, maar daarbij krijg ik "Not permitted" meldingen. De hosting heeft dus de folder "public/fotoboek" naar de owner www-data ge-chowned, maar dat heeft verder geen effect op de meldingen, die zijn er nog steeds.
Kort samengevat:
Safe Mode staat aan. Veel php functies werken daardoor niet. chmod() werkt enkel via FTP, chown() lukt me helemaal niet. Folders moeten webbased aangemaakt kunnen worden, waarin vervolgens files geupload kunnen worden. Ik krijg het niet voor elkaar. De hosting is er zeker van dat het mogelijk is met de juiste rechten en owners, maar kan me verders niet helpen.
Zijn er hier mensen die duidelijkheid kunnen scheppen? Kan het nou wel, zoals de hosting zegt, of kan het nou niet, zoals ik zelf ervaar? Als het wel kan, op welke manier dan? Ik ben na 3 dagen klooien zo'nbeetje ten einde raad...
Ohja, de server details:
Apache/2.0.45 (Unix) mod_ssl/2.0.45 OpenSSL/0.9.6c PHP/4.3.1
Sinds kort host ik m'n website bij een hosting waarbij de Safe Mode aan staat. Jep, het is een betaalde hostingprovider. Bij het installeren van een fotoboek script kom ik in de knoei met deze safemode, o.a. bij functies als mkdir(), open_dir() en move_uploaded_file().
Ik heb een folder:
../public/fotoboek
In die folder wil ik via web-based forms nieuwe folders (albums) kunnen aanmaken, waarin vervolgens ook weer web-based foto's geupload kunnen worden.
Bij zowat elke handeling verschijnen er warnings van "SAFE MODE restriction" als:
Hier op GoT heb ik een aantal topics doorgespit, maar daaruit kon ik alleenmaar opmaken dat deze functies dankzij Safe Mode gewoon niet werken:Warning: opendir() [function.opendir]: SAFE MODE Restriction in effect. The script whose uid is 1096 is not allowed to access public/fotoboek/1082557569 owned by uid 33 in /HTML/fotoboek.php on line 260
[PHP] Safe_Mode & mkDir();
[PHP] [php]opendir
[PHP] [PHP]Upload problemen in safemode *
Op php.net is het volgende te lezen over move_uploaded_file():
Ik upload de files via php, en toch mogen ze niet verwerkt worden met move_uploaded_file(). php zeurt inderdaad om de UID, maar ik heb geen idee hoe dat te fixen.Opmerking: Als safe-mode aan staat, zal PHP kijken of de bestanden of directories waarmee je wilt werken dezelfde UID heeft als het script dat wordt uitgevoerd.
Opmerking: move_uploaded_file() heeft geen last van normale safe mode UID-beperkingen. Dit is niet onveilig, omdat move_uploaded_file() alleen werkt op bestanden die zijn geupload met PHP.
Als antwoord op een mailtje van me naar de hosting, vertelde ze mij dat de functies 100% zeker wel mogelijk zijn in Safe Mode, mits de folders de juiste rechten (chmod) en de juiste owner (chown) hebben.
Ik ben druk bezig geweest met chmod(). echter, het lijkt me niet slim de boel op 777 te zetten, en tevens werkt chmod() in php ook niet. De enige manier om chmod() uit te voeren is dus via FTP. Dan zou ik dus alsnog voor elk nieuw aangemaakt album opnieuw via FTP de chmod rechten moeten geven.
Zelfde geld voor chown(), dat werkt ook niet via php zelf. In PuTTY heb ik al geprobeerd chown uit te voeren, maar daarbij krijg ik "Not permitted" meldingen. De hosting heeft dus de folder "public/fotoboek" naar de owner www-data ge-chowned, maar dat heeft verder geen effect op de meldingen, die zijn er nog steeds.
Kort samengevat:
Safe Mode staat aan. Veel php functies werken daardoor niet. chmod() werkt enkel via FTP, chown() lukt me helemaal niet. Folders moeten webbased aangemaakt kunnen worden, waarin vervolgens files geupload kunnen worden. Ik krijg het niet voor elkaar. De hosting is er zeker van dat het mogelijk is met de juiste rechten en owners, maar kan me verders niet helpen.
Zijn er hier mensen die duidelijkheid kunnen scheppen? Kan het nou wel, zoals de hosting zegt, of kan het nou niet, zoals ik zelf ervaar? Als het wel kan, op welke manier dan? Ik ben na 3 dagen klooien zo'nbeetje ten einde raad...
Ohja, de server details:
Apache/2.0.45 (Unix) mod_ssl/2.0.45 OpenSSL/0.9.6c PHP/4.3.1