Aangezien ik al de hele tijd met databases werk, willen de files niet echt lukken.
Na een zoektocht op PHP.net zonder de functie die ik zoek vraag ik het maar ffies op me favo forum :)

Hier komt ie:
Ik heb een textfile met daarin een paar waarden bv:
[email protected]
[email protected]
[email protected]
Nu wil ik zoeken in de file op een waarde en waar nodig vervangen door een andere zonder de rest aan te tasten.
Dus bv wil ik [email protected] veranderen naar [email protected].
Hoe doe ik dit?
Het wordt tijd eens een piepklein linux boekje aan te schaffen.

Per bestand is er een UID en GID vastgesteld, deze staat voor de eigenaar van het bestand. Vervolgens wordt er per gebruikerstype vastgesteld wat ze mogen.

User: de eigenaar
Groep: degene die GID matched
All: de rest.

Echter, apache draait onder een andere uid dan de user's uid. Kortom: apache zal zonder trucjes niet in de catagorie: USER vallen. Trucjes zoals SuExec. Apache valt meestal ook niet onder de groep sectie: dus blijft er een ALL sectie over.

Ook Rick's scenario van een eigen child proces voor elke gebruiker is op niet moment nog niet haalbaar: met apache2 is het wel in ontwikkeling, maar nog niet stabiel genoeg voor productie doeleinden.

Ik heb alleen het vermoeden dat je het nog neit helemaal snapt.


Een user[1] registreerd -> er wordt een map aangemaakt met een txt bestand erin.
Ik wil dat alleen ik[2] en die user zelf schrijfrechten hebben.


Wat voor user? Bij CHMOD praten we namelijk over SYSTEEM gebruikers. Niet mensen die via mysql geregistreerd hebben!

Grtz,

Adje
Laat ik de vraag anders formuleren:
Users registreren via mysql en krijgen een eigen map waarin auto een bestand wordt gezet.
Welke CHMOD moet deze map hebben?
Hangt er vanaf hoe je deze map aanmaakt. Wanneer je dit per apache doet, zal dit 777 moeten zijn wanneer je er ook nog iets per ftp aan wilt doen. Anders is 700 genoeg om alles via apache te laten lopen.

Nu maar hopen dat safe mode of openbasedir goed is ingesteld.. anders kunnen de rest van de gebruikers lekker mee koekeloeren.

Grtz,

Adje
Die map wordt door een script gemaakt en moet alleen schrijfrechten bieden aan de user die er de 'eigenaar' van is. De rest alleen lezen ...
Als je een map dmv PHP aanmaakt, met mkdir() dan krijgt het script waarmee je de dir hebt aangemaakt rechten tot die map als ik me niet vergis. :/

Maar wat je kunt doen is map beveiligen via http authentication (via php of apache) en zo die directory afschermen, heb ik ook een keer gemaakt.. Zal eens kijken straks als ik thuis ben voor je..

Wel lastige vragen heb je altijd mitch :)
Jepz het no0bgedeelte ben ik al een tijdje gepasseerd ;)

Die map wordt door een script gemaakt en moet alleen schrijfrechten bieden aan de user die er de 'eigenaar' van is. De rest alleen lezen ...


Lees nu eens!
Dit kan dus niet zonder trucjes!

Apache is de eigenaar van de dir. De user die volgens jou eigenaar moet zijn is een virtuele user, geen linux user, en Chmod bied hier geen uitkomst!
:$

En dat van Bas dan?
Maar wat je kunt doen is map beveiligen via http authentication (via php of apache) en zo die directory afschermen, heb ik ook een keer gemaakt.. Zal eens kijken straks als ik thuis ben voor je..

Mss is dat wel iets leuks :)
erm, als alleen 1 iemand rechten moet hebben om in de dir te schrijven, is dat wel lastig..

wat je zou kunnen maken is bijv. zoiets:

<?
if ($user == $_POST['user'] && $pass == $_POST['pass'])
{
echo "upload formuliertje oid?";
}
else
{
echo "Geen rechten tot deze map";
}
?>

Dit systeem, maar niet letterlijk overnemen want dit is dus geen http authentication.
Maar dit is al weer iets compleet anders dan waar mitch het over heeft. Dit heeft totaal niets met CHMOD of system users te maken.

Reageren