From aedea7d3c7b9f42b490f3b74b39b7c1a31af31a4 Mon Sep 17 00:00:00 2001 From: Apex Lu Date: Mon, 18 Dec 2017 04:19:37 +0800 Subject: [PATCH] fix: if path for sqlite database file not exists, web server not work. --- server/.idea/encodings.xml | 1 + server/share/etc/web.ini.in | 2 +- server/www/teleport/webroot/app/base/db.py | 5 +++++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/server/.idea/encodings.xml b/server/.idea/encodings.xml index d2b2ef6..653467e 100644 --- a/server/.idea/encodings.xml +++ b/server/.idea/encodings.xml @@ -28,6 +28,7 @@ + diff --git a/server/share/etc/web.ini.in b/server/share/etc/web.ini.in index 31255d6..5d35b3f 100644 --- a/server/share/etc/web.ini.in +++ b/server/share/etc/web.ini.in @@ -34,7 +34,7 @@ core-server-rpc=http://127.0.0.1:52080/rpc ; database in use, should be sqlite/mysql, default to sqlite. ; type=sqlite -; sqlite-file=/var/lib/teleport/data/ts_db.db +; sqlite-file=/usr/local/teleport/data/db/teleport.db ; mysql-host=127.0.0.1 diff --git a/server/www/teleport/webroot/app/base/db.py b/server/www/teleport/webroot/app/base/db.py index 59cbe6b..db84bf5 100644 --- a/server/www/teleport/webroot/app/base/db.py +++ b/server/www/teleport/webroot/app/base/db.py @@ -122,6 +122,11 @@ class TPDatabase: self._conn_pool = TPSqlitePool(db_file) if not os.path.exists(db_file): + + p = os.path.dirname(os.path.abspath(db_file)) + if not os.path.exists(p): + os.makedirs(p) + log.w('database need create.\n') self.need_create = True return True