Just nu i M3-nätverket
Gå till innehåll

htpasswd problem med php


Trilomictu

Rekommendera Poster

Hej!!!

 

När jag exekverar följande via ssh så fungerar allting precis som det ska, och lösenordet byts ut för användaren "David Lidstrom".

 

/usr/local/bin/htpasswd -b /home/m/minfalof/www/test/p1/.htp1 -b 'David Lidstrom' 'test'

 

Men när jag kör det från php, såhär:

 

$cmd = "/usr/local/bin/htpasswd -b /home/m/minfalof/www/test/p1/.htp1 " . escapeshellarg("David Lidstrom") . " " . escapeshellarg("test");

$a = system ($cmd);

 

så fungerar det inte alls! Jag har testat flera olika varianter med exec() och shell_exec() men ingenting verkar fungera!! Och jag får inte ut någonting från array_output med exec().

 

"return_var" i exec() returnerar 1

jag vet inte om det säger någon någonting :)

 

/ David

Länk till kommentar
Dela på andra webbplatser

Det beror på att PHP kör som användaren Apache, och inte som användaren root eller vad du nu loggar in med i SSH.

 

Då måste alltså se till att användaren apache har rättighet att skriva och läsa den relevanta filen, samt att köra programmet htpasswd.

 

Länk till kommentar
Dela på andra webbplatser

Ja, såklart =))

 

Nu när du skriver det så påminde jag mig om att webhotellet jag är på kör php som användaren "Nobody"... Men jag fick ju veta att php snart skulle börja köras som samma användare som vid ssh! Så då borde ju även detta lösa sig :))

 

 

Tack för svaret :)

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...