Есть работающий на нескольких почтовых серверах SquirrelMail. Однако, копаясь в документации, обнаружил возможность хранения настроек пользователя и адресной книги в БД MySQL. Это меня заинтересовало, соответственно решил попробовать.
Внимание! Не делать перенос на уже работающем SquirrelMail, поскольку потеряются настройки и адресные книги пользователей.
Для начала создадим базу данных и выставим необходимые права:
mysql> CREATE DATABASE squirrelmail; mysql> GRANT select,insert,update,delete ON squirrelmail.* TO squirrelmail@localhost IDENTIFIED BY 'sqlpassword'; |
Дальше необходимо создать таблицу для хранения адрессной книги пользователей:
mysql> use squirrelmail; mysql> CREATE TABLE address ( |
Теперь создадим таблицу для хранения настроек пользователей:
mysql> CREATE TABLE userprefs ( user varchar(128) DEFAULT '' NOT NULL, prefkey varchar(64) DEFAULT '' NOT NULL, prefval BLOB DEFAULT '' NOT NULL, PRIMARY KEY (user,prefkey) ); |
Вносим необходимые изменения в конфигурацию Squirrelmail:
# /usr/local/www/squirrelmail/configure SquirrelMail Configuration : Read: config.php (1.4.0) D. Set pre-defined settings for specific IMAP servers C Turn color on Command >> |
Переходим к пункту 9. Database:
SquirrelMail Configuration : Read: config.php (1.4.0)
--------------------------------------------------------- Database 1. DSN for Address Book : 2. Table for Address Book : address 3. DSN for Preferences :
4. Table for Preferences : userprefs 5. Field for username : user 6. Field for prefs key : prefkey 7. Field for prefs value : prefval 8. DSN for Global Address Book :
9. Table for Global Address Book : global_abook 10. Allow writing into Global Address Book : false 11. Allow listing of Global Address Book : false R Return to Main Menu
C Turn color on S Save data Q Quit |
Изменяем параметр 1. DSN for Address Book. Формат записи в случае использования БД MySQL следующий:
mysql://sqluser:sqlpassword@host/database |
Аналогично вносим изменения в 3. DSN for Preferences. Формат записи тот же.
В результате должно получиться следующее:
SquirrelMail Configuration : Read: config.php (1.4.0)
--------------------------------------------------------- Database 1. DSN for Address Book : mysql://squirrelmail:sqlpassword@127.0.0.1/squirrelmail 2. Table for Address Book : address 3. DSN for Preferences : mysql://squirrelmail:sqlpassword@127.0.0.1/squirrelmail
4. Table for Preferences : userprefs 5. Field for username : user 6. Field for prefs key : prefkey 7. Field for prefs value : prefval 8. DSN for Global Address Book :
9. Table for Global Address Book : global_abook 10. Allow writing into Global Address Book : false 11. Allow listing of Global Address Book : false R Return to Main Menu
C Turn color on S Save data Q Quit |
На этом все. Теперь настройки будут храниться в БД MySQL.
Последние комментарии
21 неделя 6 дней назад
46 недель 16 часов назад
2 года 46 недель назад
3 года 16 недель назад
3 года 39 недель назад
4 года 2 недели назад
4 года 3 недели назад
4 года 6 недель назад
4 года 18 недель назад
4 года 22 недели назад