Roundcube Community Forum

 

sqlite problem [solved]

Started by explosion, November 02, 2007, 06:52:05 AM

Previous topic - Next topic

explosion

hi, i just installed roundcube 0.1-rc2 and tried it out. system is debian etch with lighttpd as webserver and php5 via fcgi. i chose sqlite as database and set everything up. but if i try to login this happens:

[02-Nov-2007 11:40:38 +0100] DB Error: DB Error: unknown error Query: 14 ** INSERT INTO users (created, last_login, username, mail_host, alias, language) VALUES (now(), now(), 'imaptest@****', '****', '', 'de_DE') [nativecode=sqlite_query() [function.sqlite-query]: unable to open database file] in /var/www/****/mail/program/include/rcube_db.inc on line 505
[02-Nov-2007 11:40:38 +0100] PHP Error: Failed to create new user in /var/www/****/mail/program/include/main.inc on line 740
[02-Nov-2007 11:40:38 +0100] DB Error: DB Error: unknown error Query: 14 ** INSERT INTO session (sess_id, vars, ip, created, changed) VALUES ('f8f45432ba3ee2d632c26b8191f6f9ae', 'user_lang|s:5:"de_DE";auth_time|i:1194000038;temp|b:1;', '81.169.183.122', now(), now()) [nativecode=sqlite_query() [function.sqlite-query]: unable to open database file] in /var/www/****/mail/program/include/rcube_db.inc on line 505

config is:
$rcmail_config['db_dsnw'] = 'sqlite://./sqlite2.db';

serv:/var/www/****/mail# ls -lh sqlite2.db
-rw-rw-rw- 1 www-data www-data 27K Nov 2 00:10 sqlite2.db

the roundcube root is in the same directory.
if i change the config to:

$rcmail_config['db_dsnw'] = 'sqlite://sqlite2.db?mode=0646';

its:
[02-Nov-2007 11:48:59 +0100] DB Error: DB Error: insufficient permissions in /var/www/****/mail/program/include/rcube_db.inc on line 105

imap login is ok. sqlite version is 2.8.17. php runs as user www-data. has anybody an idea? thanks!

mikeb

I'm having the exact same thing in Ubuntu Gutsy. I first tried the roundecube Ubuntu package from gutsy/universe then with rc2 downloaded and manually installed. Both had the same result.

my mail.log only shows:
Nov 2 12:10:06 localhost imapd-ssl: Connection, ip=[::ffff:127.0.0.1]
Nov 2 12:10:06 localhost imapd-ssl: LOGIN, user=mike, ip=[::ffff:127.0.0.1], protocol=IMAP
Nov 2 12:10:06 localhost imapd-ssl: LOGOUT, user=mike, ip=[::ffff:127.0.0.1], headers=0, body=0, rcvd=25, sent=180, time=0, starttls=1

But the interface reports a login error. looking in logs/errors shows the same error about accessing the sqlite DB.

I have the db setup with write access by the webserver:
-rw-rw-r-- 1 root www-data 27648 2007-11-02 08:16 roundcube.db

I know the DB is being correctly accessed becuase switching to full path makes the login screen be replased with a DB access failed error message.

I am running:
Apache 2.2.4
PHP5 5.2.3
SQLite 2.8.17

mikeb

I believe I found the problem. The webserver process needs write access to the directory that the sqlite DB file exists to create a journal file. It may also be possible to create the journal manually and give write access to that, but I have no ested that.

Works for me now.

explosion

thanks! that did it. this issue should be mentioned in INSTALL.