我已经使用django默认服务器成功地在本地主机环境中安装了一个pootle服务器,下面的说明是:http://docs.translatehouse.org/projects/pootle/en/stable-2.8.x/server/installation.html。
然后,我按照以下说明成功地将nginx设置为反向代理服务器:http://docs.translatehouse.org/projects/pootle/en/stable-2.8.x/server/web.html#proxying-with-nginx
然后,我按照下面的说明成功地将数据库从SQLite迁移到MySQL:http://docs.translatehouse.org/projects/pootle/en/stable-2.8.x/server/mysql_Installation.html#mysql-安装
现在,我想采取下一步,使用mod_wsgi在apache下运行pootle,这样就不会使用默认的django服务器,因为我已经准备好使用一个成熟的生产服务器了。我遵循这里的说明:http://docs.translatehouse.org/projects/pootle/en/stable-2.8.x/server/web.html#apache-with-mod-wsgi
我已经成功地加载了起始页面,但当我尝试登录时遇到了问题。我在铬控制台中得到了这个错误:vendor.min.ce9c05c2.js:25 POST http://pootle.localhost/var/www/vhosts/pootle/env/lib/python2.7/site-packages/pootle/accounts/login/?next=%2F 402 (Payment Required)
在http://pootle.localhost上,起始页面显示得很好,所以我很确定这些资产是直接加载的,没有任何问题:
Alias /assets /var/www/vhosts/pootle/env/lib/python2.7/site-packages/pootle/assets/看来apache和wsgi之间有什么问题,因为我认为我不应该在帖子的URL中看到/var/www/vhosts/pootle/env/lib/python2.7/site-packages/pootle?
发布于 2019-01-18 03:36:44
我解决了问题。我应该为此而自责。在我的pootle.conf结束时,我得到了这个:
# - Include the following settings in your custom Pootle settings:
STATIC_URL = '/assets/'
FORCE_SCRIPT_NAME = '/var/www/vhosts/pootle/env/lib/python2.7/site-packages/pootle/'
POOTLE_ENABLE_API = TrueFORCE_SCRIPT_NAME显然应该是:
FORCE_SCRIPT_NAME = '/'问题解决了,我犯了愚蠢的错误。
https://serverfault.com/questions/949435
复制相似问题