我已经在虚拟环境中安装了评论板,并使用带有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行,in 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行,主要内容 command.run()文件“/home/naveen/venv-review/local/lib/python2.7/site-packages/ReviewBoard-1.7.21-py2.7.egg/reviewboard/cmdline/rbsite.py”,line 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/management/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/核心/管理/ 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的/核心/管理/ base.py” 第232行,执行中 output = self.handle(* args,** options)File“/home/naveen/venv-review/local/lib/python2.7/site-packages/Django-1.4.10-py2.7.egg/django/核心/管理/ base.py” 第371行,处理中 return self.handle_noargs(** options)File“/home/naveen/venv-review/local/lib/python2.7/site-packages/ReviewBoard-1.7.21-py2.7.egg/reviewboard/reviews/management/命令/ fixreviewcounts.py”, 第16行,在handle_noargs中 starred_public_request_count =无)文件“/home/naveen/venv-review/local/lib/python2.7/site-packages/Django-1.4.10-py2.7.egg/django/db/models/manager.py”, 第185行,更新中 return self.get_query_set()。update(* args,** kwargs)file“/home/naveen/venv-review/local/lib/python2.7/site-packages/Django-1.4.10-py2.7.egg /django/db/models/query.py” 第536行,更新中 rows = 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 /模型/ 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
答案 0 :(得分:0)
sqlite3文件,不仅是目录,必须拥有,并且必须由运行Web服务器的用户写入。
所以你可以尝试从终端shell运行:
sudo chown -R www-data /home/naveen/venv-review/reviewboard/data
sudo chmod -R u+w /home/naveen/venv-review/reviewboard/data/*
第一个命令以递归方式更改文件夹内文件的所有者,第二个命令确保用户对这些文件具有写入权限。