我已经在虚拟环境中安装了评论板,并使用带有mod_wsgi的apache2在ubuntu 13.10上创建了站点评论板 . 当我击中
http://localhost
我被要求升级网站
审核委员会运行的版本与网站上次升级的版本不匹配 . 您运行的是1.7.20,该网站上次升级到1.7.21 . 请升级您的网站以通过运行来解决此问题:
并升级
$ rb-site upgrade /home/naveen/venv-review/reviewboard
拿到
我得到以下消息:
更新数据库 . 可能还要等一下 . 除非升级失败,否则可以忽略下面的日志输出,包括警告和错误 . ------------------ ------------------创建表...安装自定义SQL ...安装索引 . ..从0个夹具安装0个对象无需进化 . ------------------- -------------------重置数据库内缓存 . 回溯(最近一次调用最后一次):文件“/ home / naveen / venv-review / bin / rb-site”,第9行,在load_entry_point中('ReviewBoard == 1.7.21','console_scripts','rb-site' )()文件“/home/naveen/venv-review/local/lib/python2.7/site-packages/ReviewBoard-1.7.21-py2.7.egg/reviewboard/cmdline/rbsite.py”,第2027行,在主命令.run()文件“/home/naveen/venv-review/local/lib/python2.7/site-packages/ReviewBoard-1.7.21-py2.7.egg/reviewboard/cmdline/rbsite.py” ,第1860行,在运行site.run_manage_command(“fixreviewcounts”)文件“/home/naveen/venv-review/local/lib/python2.7/site-packages/ReviewBoard-1.7.21-py2.7.egg/reviewboard /cmdline/rbsite.py“,第562行,在run_manage_command execute_manager(reviewboard.settings,[file,cmd] params)文件”/home/naveen/venv-review/local/lib/python2.7/site-packages/Django -1.4.10-py2.7.egg / django / core / management / init.py“,第459行,在execute_manager utility.execute()文件中”/home/naveen/venv-review/local/lib/python2.7 /site-packages/Django-1.4.10-py2.7.egg/django/core/man agement / init.py“,第382行,执行self.fetch_command(子命令).run_from_argv(self.argv)文件”/home/naveen/venv-review/local/lib/python2.7/site-packages/Django- 1.4.10-py2.7.egg / django / core / management / base.py“,第196行,在run_from_argv self.execute(* args,** options.dict)文件”/ home / naveen / venv-review / local / lib / python2.7 / site-packages / Django-1.4.10-py2.7.egg / django / core / management / base.py“,第232行,执行输出= self.handle(* args,* 选项)文件“/home/naveen/venv-review/local/lib/python2.7/site-packages/Django-1.4.10-py2.7.egg/django/core/management/base.py”,行371,句柄返回self.handle_noargs(* options)文件“/home/naveen/venv-review/local/lib/python2.7/site-packages/ReviewBoard-1.7.21-py2.7.egg/reviewboard/评论/ management / commands / fixreviewcounts.py“,第16行,在handle_noargs starred_public_request_count =无)文件”/home/naveen/venv-review/local/lib/python2.7/site-packages/Django-1.4.10-py2更新retu中的.7.egg / django / db / models / manager.py“,第185行自我.get_query_set() . update(* args,** kwargs)文件“/home/naveen/venv-review/local/lib/python2.7/site-packages/Django-1.4.10-py2.7.egg /django/db/models/query.py“,第536行,更新行= query.get_compiler(self.db).execute_sql(无)文件”/home/naveen/venv-review/local/lib/python2.7 /site-packages/Django-1.4.10-py2.7.egg/django/db/models/sql/compiler.py“,第988行,在execute_sql cursor = super(SQLUpdateCompiler,self).execute_sql(result_type)文件” /home/naveen/venv-review/local/lib/python2.7/site-packages/Django-1.4.10-py2.7.egg/django/db/models/sql/compiler.py“,第818行, execute_sql cursor.execute(sql,params)文件“/home/naveen/venv-review/local/lib/python2.7/site-packages/Django-1.4.10-py2.7.egg/django/db/backends/ sqlite3 / base.py“,第344行,执行返回Database.Cursor.execute(self,query,params)django.db.utils.DatabaseError:尝试编写只读数据库
sqlite数据库目录已被授予访问服务器(www-data)的权限:sudo chown www-data / home / naveen / venv-review / reviewboard / data
如果是这种情况,www-data是否应该具有site / reviewboard的读/写访问权限?
**** 更新 *****
检查apache2用户
ps aux | grep apache2
root 1146 0.0 0.0 84208 3928 ? Ss 11:19 0:00 /usr/sbin/apache2 -k start
www-data 3632 0.1 0.6 698464 51056 ? Sl 11:34 0:01 /usr/sbin/apache2 -k start
www-data 3742 0.1 0.6 698480 51032 ? Sl 11:34 0:01 /usr/sbin/apache2 -k start
naveen 7162 0.0 0.0 13652 940 pts/1 S+ 11:53 0:00 grep apache2
1 回答
sqlite3文件(不仅是目录)必须拥有,并且必须由运行Web服务器的用户写入 .
所以你可以尝试从终端shell运行:
第一个命令以递归方式更改文件夹内文件的所有者,第二个命令确保用户对这些文件具有写入权限 .