hmm, ich glaube ich habe mich blöd ausgedrückt oder du hast nicht verstanden was genau ich wollte
Nochmal von vorne und genaue erklärt:
Ich habe mir von einiger Zeit die 0.3RC1 Version von Roundcube auf meinen V-Server eingerichtet. Dabei verwendet Roundcube die MySQL-Tabelle "roundcube".
Dann habe ich auf meinem V-Server noch einen Postfix Mailserver laufen, welcher die E-Mail Konten ebenfalls per MySQL Verwaltet. Die Tabelle für Postfix heißt "mailserver".
Nach der Installation von Roundcube habe ich mir noch das Passwort-Ändern-Plugin eingerichtet. Dazu habe ich in der Config des Plugins folgendes angepasst:
$rcmail_config['password_driver'] = 'sql';
$rcmail_config['password_db_dsn'] = 'mysql://roundcube:******@localhost/mailserver';
$rcmail_config['password_query'] = 'UPDATE virtual_users SET password = MD5(%p) WHERE domain_id = (SELECT id FROM virtual_domains WHERE name = %h) AND user = %u';
password_db_dsn zeigt auf die Mailserver-Tabelle, da ich ja das Passwort des Mail-Accounts ändere.
Dann habe ich noch in der password.php geändert, das der Host und der Benutzername getrennt werden, da bei mir der IMAP Benutzername gleich der E-Mail Adresse ist und ich mit der kompletten E-Mail Adresse mein Query nicht hätte ausführen können.
Wenn ich jetzt das Passwort über Roundcube ändere, dann kommt der Fehler 500 und ich verliere die Verbindung zum IMAP-Server.
Der Apache-Error-Log sag dazu folgendes:
MDB2 Error: no such table (-18): _doQuery: [Error message: Could not execute statement]n[Last executed query: PREPARE mdb2_statement_mysql_3b18ec83f9ffe2b61cece10f4255b9aea2f7f71ee FROM 'SELECT vars FROM session\\n WHERE sess_id=?']n[Native code: 1146]n[Native message: Table 'mailserver.session' doesnt exist]n, referer: http://domain.net/?_task=settings&_action=plugin.passwordIn dem Log will Roundcube auf die tabelle mailserver.session zugreifen, aber die db mailserver ist ja vom Postfix nicht von roundcube. Es müsste also roundcube.session heißen.
Kann es sein das Roundcube die Datenbank-Verbindung für die Passwortänderung mit der Datenbank-Verbindung vom Roundcube überrschreibt so das er dann die normalen Querys auch auf die mailserver-db ausführt?
Ich hatte niemals vor das Passwort innerhalb einer Session oder in der Session-Tabelle zu ändern. Der Fehler aus dem Log kommt von Roundcube und ist kein Query welches ich selber angelegt habe oder ich absichtlich ausführen lasse.