Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
 
Фильтр авторов:    показать 
  скрыть
  Закрытая темаСоздание новой темыСоздание опроса

> Нулевой размер файла .htpasswd, при добавлении пользователя apache через expect из браузера
Макс1  
 ۩  [x] Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 5
Пользователь №: 41769
На форуме: 1 год, 6 месяцев, 27 дней
Карма:




Есть сервер на openSUSE Linux.

Есть задача добавлять пользователей apache через браузер. Используется такой скрипт apacheadduser.exp

#!/usr/bin/expect
set realm "Connection to server database"
set digestFile "/etc/apache2/.htpasswd"
set htdigest "/usr/bin/htdigest2"
if {[llength $argv] != 2} {puts "Usage apacheadduser <user> <password>\n"
exit}
set user [ lindex $argv 0 ]
set password [ lindex $argv 1 ]
spawn $htdigest $digestFile $realm $user
expect "New password:"
send "$password\r"
expect "Re-type new password:"
send "$password\r"
interact


В браузере открывается php-файл с такой строчкой:

exec('/etc/apache2/apacheadduser.exp '.$user.' '.$password, $output);


Владелец и группа файла /etc/apache2/.htpasswd изменены на wwwrun:www, чтобы разрешить писать из браузера.

С определенной вероятностью при первой попытке создания пользователя после открытия страницы в браузере вместо добавления строки с именем пользователя получается файл нулевого размера. Причем сначала строка записывается нормально, а затем файл приобретает нулевой размер. Запись в цикле, если пытаться несколько раз писать имя пользователя, пока файл имеет нулевой размер, не помогает, число неудачных попыток становится бесконечным. Но удачной чаще всего оказывается следующая попытка, если нажать кнопку в браузере следующий раз. В чем может быть причина, как ее определить, и что можно сделать?
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Закрытая темаСоздание новой темыСоздание опроса