Forum Webscript.Ru

Программирование => PHP => Тема начата: Rel от 23 Ноября 2002, 01:31:34

Название: PHP: STDIN/STDOUT
Отправлено: Rel от 23 Ноября 2002, 01:31:34
предистория..
Многие из вас сталкивались с защитой директорий с админством.
Использовать .htaccess ?! Конечно!
Но! Админ хочет менять пароль, не выходя из админства. Т.е.:
1) проверять в index.php $PHP_AUTH_PW, а сам пароль(неизвсетно как закодированный) лежит в файле (или БД) рядом. Опять же гемморой с проверкой других скриптов.
2) можно иметь в директории .htaccess, htpasswd и pwd файлик, который в нужный момент (смена пароля) можно заменить.
Теперь задача:
как выполнить следующую команду средствами php:
"htpasswd -c -b pwd login newpassword"
(грубо говоря на место старого файла с пассвордом записать такой же, но с новым паролем)
function.fopen.html - мне не помог.

ХЕЛППППППППП!!!!!!!!!!
:insane:
Название: PHP: STDIN/STDOUT
Отправлено: Alexandr от 23 Ноября 2002, 14:19:33
exec("htpasswd -c -b pwd login newpassword");
тебя спасёт
Название: PHP: STDIN/STDOUT
Отправлено: ThE0ReTiC от 23 Ноября 2002, 15:39:56
Цитировать
неизвсетно как закодированный

Известно. Если алгоритм шифрования не указан явно , htpasswd использует MD5.
Название: PHP: STDIN/STDOUT
Отправлено: Rel от 23 Ноября 2002, 16:53:08
Alexandr
списибо, заработало
Название: PHP: STDIN/STDOUT
Отправлено: Меняздесьдавнонет от 23 Ноября 2002, 19:54:55
При авторизации через апач, никакого $PHP_AUTH_PW в РНР нет. только имя в $REMOTE_USER
Название: PHP: STDIN/STDOUT
Отправлено: Rel от 08 Декабря 2002, 21:48:20
под виндой всё пашет безукоризненно
а под иксами траблы:

exec("htpasswd -c -b pwdfile login password", $a, $b);

в $a возвращает пустой массив (где по идее должны были быть эхи), а в $b -  код ошибки (2)
че делать?! не соображу
пробовал

$pointer = popen ("/usr/bin/htpasswd -c pwd admin pass>&1", "r");
print gettype($pointer);
$foo=fread($pointer,100);
print $foo;
pclose($pointer);


пишет нормальные эхи, а с нужной ком. строкой не пашет
Название: PHP: STDIN/STDOUT
Отправлено: Макс от 08 Декабря 2002, 22:36:08
http://cvs.php.net/co.php/pear/File_Passwd/Passwd.php?login=2&r=1.2
Название: PHP: STDIN/STDOUT
Отправлено: Rel от 08 Декабря 2002, 23:17:28
Макс
ух.. спасибо!