htdbm и mod_authn_dbm перестали работать при миграции между апачскими 2,2 серверами

Я перемещаю существующий веб-сайт от Apache 2.2.4 на хинду, 32-разрядном к Apache 2.2.27 на 64-разрядном CentOS. Этот конкретный сайт использует DBM для аутентификации с зашифрованными паролями.

В старой системе, если я ввожу:

htdbm -l access.db

Я получаю список пользователей в файле.

В новой системе, тех же выводах команды:

Error opening database access.db
No such file or directory

Я проверил полномочия на access.db, и я попытался выполнить htdbm как корень. Это должна быть ошибка формата.

Затем я обнаружил, что Apache не был скомпилирован с - with-berkeley-db, таким образом, я включил тот и перекомпилировал Apache.

Однако теперь результат:

Dumping records from database -- access.db
    Username                         Comment
Total #records : 0

Я знаю, что этот конкретный файл содержит 68 записей.

Интересно, об этом файле сообщают как:

access.db: Berkeley DB (Hash, version 7, native byte-order)

Принимая во внимание, что я нашел другой файл BDB, который действительно работал над этой системой, и это показало:

restricted.db: Berkeley DB (Hash, version 8, native byte-order)

Что больше я могу сделать для обнаружения, почему первый файл не может быть считан? Если это - версия, как я могу преобразовать файл в более новую версию?

1
задан 11 August 2014 в 10:35
1 ответ

На данный момент моим решением является использование

db_dump 

на старом сервере и

db_load

на новом.

Я предполагаю, что мог бы сделать все это на новом сервере, если бы получил старую версию библиотек BDB и скомпилировал их, используя флаг

 ---with-dbm

.

Однако, в данный момент, так как у меня есть рабочие версии в обоих местах, это самое быстрое решение для меня на данный момент.

.
0
ответ дан 4 December 2019 в 08:34

Теги

Похожие вопросы