我让weblate在开发模式下用:8000运行,但我无法让它在虚拟环境下用wsgi在apache2中运行,在那里一切都正常。但是我无法让它在apache2的虚拟环境中用wsgi运行,而在那里一切都正常。
基于apache的错误,它甚至找不到安装的django.我这样做了,但看到另一个错误的缺失模块.很明显,wsgi不尊重virtualenv中对python模块的搜索。
我的服务器是Ubuntu 19.04。
请赐教。
<VirtualHost *:80>
ServerName xxyyzz.com
# DATA_DIR/static/favicon.ico
Alias /favicon.ico xxyyzz/weblate-env/lib/python3.7/site-packages/data/static/favicon.ico
# DATA_DIR/static/
Alias /static/ xxyyzz/weblate-env/lib/python3.7/site-packages/data/static/
<Directory xxyyzz/weblate-env/lib/python3.7/site-packages/data/static/>
Require all granted
</Directory>
# DATA_DIR/media/
Alias /media/ xxyyzz/weblate-env/lib/python3.7/site-packages/data/media/
<Directory /home/weblate/data/media/>
Require all granted
</Directory>
# Path to your Weblate virtualenv
WSGIDaemonProcess weblate python-path=xxyyzz/weblate-env
WSGIProcessGroup weblate
WSGIApplicationGroup weblate
WSGIScriptAlias / xxyyzz/weblate-env/lib/python3.7/site-packages/weblate/wsgi.py process-group=weblate
WSGIPassAuthorization On
<Directory xxyyzz/weblate-env/lib/python3.7/site-packages/weblate/>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
</VirtualHost>
原来这个例子的配置是错误的,应该是使用了 python-path
而不是 python-home
对于 WSGIDaemonProcess
. 我刚刚 在Weblate中修正了这一点 而你可能也需要在你的配置中进行这样的改变。