我正在试验 poste.io 邮件服务器。 它使用rouncube作为其Web界面。 我尝试启用密码插件。
每当我尝试设置密码时,我都会看到以下错误:
[2017 年 3 月 21 日 13:00:31 +0100]:数据库错误:[1] 没有这样的函数:update_passwd(SQL 查询:SELECT update_passwd('$1$LXeDlIT0$NGunS8gcCOSrKK2ZJ6RIW/', 'naidu@example.com')) 在第 539 行的/opt/www/webmail/program/lib/Roundcube/rcube_db.php (POST/webmail/?_task=settings>_action=plugin.password-save)
互联网上充斥着使用 mysql 作为数据库。 我想我必须更新密码更改查询
/opt/www/webmail/plugins/password/config.inc.php
从
$sql = '选择 update_passwd(%c, %u)';
自
$sql = '更新邮件帐户设置密码=%c 其中 nname=%u 限制 1';
上面的 UPDATE 语句对 mysql 有效。 sqlite3 数据库的等效项是什么?
我有一个由 sqlite 后缀组成的设置,我的 sql 查询如下所示:
UPDATE mailbox SET password=%c WHERE username=%u LIMIT 1
我的 sqlite 配置如下:
$config['password_db_dsn'] = 'sqlite:////var/vmail/postfixadmin.db?mode=0646';
$config['password_query'] = 'UPDATE mailbox SET password=%c WHERE username=%u LIMIT 1';
添加以下内容进行调试:
$config['debug_level'] = 4;
$config['sql_debug'] = true;
$config['imap_debug'] = true;
$config['ldap_debug'] = true;
$config['smtp_debug'] = true;
希望这有帮助。