"Schultz Consult - [René Madsen]" <rene@schultzconsult.com> writes:
> Jeg køre en php fil som modtager nogle input, men det lader til at når disse
> consol komandore blive kørt gennem php scriptet kan den ikke oprette
> bibliotekerne...
>
> Er det et rettigheds problem? kan dette evt. løses ved brug af ren shell
> scripts?
>
> php scriptet ser således ud:
> <?php
> $line1 = exec("/home/vpopmail/bin/vadduser $address $pass", $output,
> $error);
> // noget plader for at se hvad der sker...
> while (list(,$line) = each($output)){
> echo $line, "<BR>\n";
> }
> if ($error){
> echo "Unix error code: $error<BR>\n";
> exit;
> }
> ?>
> den bliver kørt fra /var/www/html/test på en RedHat 7.3 og bliver kaldt
> sådanher index.php?address=test@testdomain.com&pass=123
>
> Er krydspostet til dk.edb.internet.webdesign.serverside.php og
> dk.edb.system.unix
>
> followup dk.edb.internet.webdesign.serverside.php
Problemet ligger sikkert i, at den bruger din webserver kører som, ikke
har adgang til at oprette emailkonti med vadduser. Det er normalt kun
vpopmail brugeren og root, der kan det.
Du kan evt. løse det ved at give webserverbrugeren sudo rettigheder til
at køre vadduser. Tag et kig på man-siden til sudo. Alternativt kan du
smidde de indtastede data (fra .phpscriptet) i en database, og lade et
cronjob om at foretage den endelige oprettelse ved at køre vadduser på
de data, der er i databasen.
/Claus A