Eu tenho nginx + uWSGI rodando em localhost dentro de um virtualenv com um simples programa hello world, mas recebo este erro quando substituo o hello world por um simples aplicativo Flask:
File "./wsgi_configuration_module.py", line 1, in <module>
from flask import Flask
ImportError: No module named flask
unable to load app mountpoint
Aqui está o aplicativo do frasco (wsgi_configuration_module.py):
from flask import Flask
application = Flask(__name__)
@application.route("/")
def hello():
return "hello world"
if __name__ == "__main__":
application.run()
uWSGI config (app_conf.xml):
<uwsgi>
<socket>127.0.0.1:9001</socket>
<chdir>/srv/www/labs/application</chdir>
<pythonpath>/srv/www</pythonpath>
<module>wsgi_configuration_module</module>
<callable>application</callable>
<no-site>true</no-site>
</uwsgi>
configuração nginx:
server {
listen 80;
server_name localhost;
access_log /srv/www/labs/logs/access.log;
error_log /srv/www/labs/logs/error.log;
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:9001;
}
location /static {
root /srv/www/labs/public_html/static/;
index index.html index.htm;
}
}
virtualenv armazenado em ~ / virtual_env com o Python 2.7 + nginx + uWSGI + Flask instalado em um virtualenv chamado basic
.
Coisas que tentei resolver:
- defina a opção
--home (-H)
para minha pasta virtualenv ~/virtual_env
durante a execução do uWSGI.
Outras informações:
- Eu tenho a mesma configuração trabalhando fora de um virtualenv. As coisas dão errado apenas quando tento replicar a configuração dentro de um virtualenv.
Onde eu errei?