Toon posts:

[PHP] Safemode probleem

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb een script draaien dat useraccounts in een flatfile aanmaakt. Deze useraccounts hebben een aparte directory waarin bestanden moeten worden aangemaakt. Tot nu toe is dit een probleem, ik krijg de bestanden niet in de directory die zojuist is aangemaakt. De volgende melding verschijnt:

Warning: SAFE MODE Restriction in effect. The script whose uid is 2312 is not allowed to access /opt/guide/nuedel/HTML/folder/username owned by uid 99 in /opt/guide/nuedel/HTML/folder/new_user.php on line 95

Okee. SAFE MODE dus. Dit is een instelling op de server die is ingesteld. Even gezocht op php.net, en ik kwam het volgende tegen: http://www.php.net/manual/en/features.safe-mode.php
en
http://www.php.net/manual/en/function.ini-set.php

Erg aardig allemaal. Ik kan dus volgens deze lectuur de safemode uitzetten tijdens het verloop van het script. Ik heb dus het volgende ingevoerd in mijn script:

ini_set ("safe_mode" , "0");

Zonder resultaat helaas. Ook enkele andere SAFE MODE opties geprobeerd, maar het leidde allemaal tot niets.

Nu heb ik op http://www.thewebmasters.net/php/File.phtml#new_File gezien dat het mogelijk is om een vaste UID aan een pagina mee te geven, met andere woorden: pretenderen dat het UID 99 is, terwijl het eigenlijk 2312 is, zoals je in de foutmelding kunt zien.

Ik heb de pagina helemaal doorgelezen en begrepen dat dit te doen is door het echt UID op te vragen en het dan te bewerken naar het UID dat je voor ogen hebt.

Maar hoe?

Het script op www.thewebmasters.net is heel erg complex, en ik kan er niet uitkomen...

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Ik neem aan dat je Apache gebruikt? Met Apache kun je geloof ik per script de user en group instellen in een .htaccess-je, maar daar zou je ff de Apache docs over na moeten slaan, dat weet ik niet precies uit mijn hoofd.

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Verwijderd

Topicstarter
drm schreef op 16 oktober 2002 @ 09:36:
Ik neem aan dat je Apache gebruikt? Met Apache kun je geloof ik per script de user en group instellen in een .htaccess-je, maar daar zou je ff de Apache docs over na moeten slaan, dat weet ik niet precies uit mijn hoofd.
Ja is een apache van Widexs. Zal wel Red Hat wezen of zo.

Ik probeer dat met .htaccess eens uit. Bedankt voor de tip.

Verwijderd

Topicstarter
Ik begrijp dat het .htaccess-bestand in de map geplaatst moet worden waar niet in geschreven kan worden.

Klinkt dus vrij nutteloos, want dan zou dat bestand automatisch aangemaakt moeten worden (is het doel van het script) en dat gaat dus niet...

Of zit ik nu fout?

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

frummel:
Ik begrijp dat het .htaccess-bestand in de map geplaatst moet worden waar niet in geschreven kan worden.

Klinkt dus vrij nutteloos, want dan zou dat bestand automatisch aangemaakt moeten worden (is het doel van het script) en dat gaat dus niet...

Of zit ik nu fout?

Volgens mij zit je fout, want dat is niet een vereiste maar een veiligheidstip, volgens mij. Daar komt bij dat het niet zo zeer om een .htaccess gaat, maar om de Apache configuratie.

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • sjokki
  • Registratie: Juli 2002
  • Niet online
Je kan in httpd.conf wel de user en de group veranderen per virtual host. Maar dat je dit per script in .htaccess kan doen lijkt me sterk.

Ik heb dit probleem in een van mijn scripts opgelost door in plaats van met mkdir() de mappen aan te maken via ftp. Als je php via ftp laat inloggen op je eigen account worden de mappen wel aangemaakt onder je eigen uid. Het klinkt inderdaad als een prutsoplossing maar safemode zelf is ook een prutsoplossing.

Aan dat php3 script uit 1999 zou ik trouwens niet te veel waarde hechten, Safemode was in die tijd een stuk minder streng.

Verwijderd

Topicstarter
sjokki:

Ik heb dit probleem in een van mijn scripts opgelost door in plaats van met mkdir() de mappen aan te maken via ftp. Als je php via ftp laat inloggen op je eigen account worden de mappen wel aangemaakt onder je eigen uid. Het klinkt inderdaad als een prutsoplossing maar safemode zelf is ook een prutsoplossing.
Sja, je moet toch wat om het draaiend te krijgen. Had er ook al aan gedacht om het zo te doen, maar eigenlijk wil ik dit niet. Het moet ook met PHP goed komen.
Aan dat php3 script uit 1999 zou ik trouwens niet te veel waarde hechten, Safemode was in die tijd een stuk minder streng.
Hmmm. Is goed dat je me op de datum wijst. Had ik niet gezien.....

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

De .htaccess moet _ergens_ in het pad naar die dir komen.
Dus ofwel in de dir zelf, ofwel in de dir ervoor, daarvoor, daarvoor etc :)

Enige nadeel is dat je waarschijnlijk de php-settings niet mag wijzigen vanuit je .htaccess, maar het is het proberen waard.

Check trouwens evt mijn uitleg hier nog:
[rml]ACM in "[ php] vreemde error in php"[/rml]
Pagina: 1