将应用程序服务器从gunicorn切换到uwsgi时获取`TemplateNotFound`

时间:2018-12-10 19:02:31

标签: python nginx gunicorn uwsgi redash

我决定将Redash服务器升级到版本5,这是因为redsah是现成的,使用nginx作为Web服务器,使用gunicorn作为应用程序服务器和Flask,并且我想使用uwsgi作为应用程序服务器,所以我更改了以下行:
exec /usr/local/bin/gunicorn --timeout 300 -b 0.0.0.0:5000 --name redash -w${REDASH_WEB_WORKERS:-4} redash.wsgi:app
到:
exec /usr/local/bin/uwsgi --ini redash.ini
其中redash.ini

[uwsgi]
module = redash.wsgi:app
harakiri = 300

master = true
processes = 4
threads = 4
thunder-lock = true
socket = :5000
protocol = http
enable-threads = true

callable = app

disable-logging=False  

我的项目如下:

app 
├── CHANGELOG.md
├── CONTRIBUTING.md
├── Dockerfile
├── Dockerfile.cypress
├── Jenkinsfile
├── LICENSE
├── Makefile
├── README.md
├── bin
│   ├── bundle-extensions
│   ├── docker-entrypoint
│   ├── flake8_tests.sh
│   ├── get_changes.py
│   ├── pack
│   ├── pre_compile
│   ├── release_manager.py
│   ├── run
│   └── upgrade
├── client
│   └── app
├── docker-compose.production.yml
├── docker-compose.yml
├── manage.py
├── netlify.toml
├── now.json
├── package-lock.json
├── package.json
├── pytest.ini
├── redash
│   ├── __init__.py
│   ├── admin.py
│   ├── authentication
│   ├── cli
│   ├── destinations
│   ├── extensions.py
│   ├── handlers
│   ├── metrics
│   ├── models.py
│   ├── monitor.py
│   ├── permissions.py
│   ├── query_runner
│   ├── serializers.py
│   ├── settings
│   ├── tasks
│   ├── templates
│   ├── utils
│   ├── version_check.py
│   ├── worker.py
│   └── wsgi.py
├── redash.ini
├── requirements.txt
├── requirements_all_ds.txt
├── requirements_dev.txt
├── requirements_oracle_ds.txt
├── setup
│   ├── README.md
│   ├── docker-compose.yml
│   ├── generate_key.sh
│   ├── packer.json
│   └── setup.sh
├── setup.cfg
├── tests
│   ├── __init__.py
│   ├── factories.py
│   ├── handlers
│   ├── models
│   ├── query_runner
│   ├── tasks
│   ├── test_authentication.py
│   ├── test_cli.py
│   ├── test_configuration.py
│   ├── test_handlers.py
│   ├── test_models.py
│   ├── test_permissions.py
│   └── test_utils.py
└── webpack.config.js  

问题是,当我切换到uwsgi并尝试浏览到redash登录屏幕时,尝试获取TemplateNotFound文件时,我从flask中获得了login.html异常。
我没有在上面的执行行旁边的项目中进行任何更改,它在gunicorn下可以正常工作。 知道uwsgi中的什么会导致此异常吗?为什么uwsgi行为不同并且找不到模板文件夹?

0 个答案:

没有答案