尝试在uWSGI上访问Flask-Admin时找不到404

时间:2014-09-02 14:39:28

标签: python nginx flask uwsgi flask-admin

我是网络编程的新手,所以我希望在我的配置中遗漏一个超级简单的东西,希望你能帮助我! (也原谅我的英文 - 嘿)

所以这就是事情: 我正在使用Flask上的小应用程序,一切正常。特别是我正在搞乱Flask-Admin:

123.45.67.8:8080/admin/

返回我的工作管理面板...一旦我从内置服务器切换到nginx / uWSGI网址

www.mywebsite.com/admin/

给了我一个404 ......但只有Flask-Admin部分,其他一切都很完美!

我使用以下命令启动uWSGI uwsgi --ini /path/to/myweb_uwsgi.ini

myweb_uwsgi.ini

[uwsgi]
#application's base folder
base = /var/www/myweb

#python module to import
app = myweb
module = %(app)

home = %(base)/venv
pythonpath = %(base)

#socket file's location
socket = /var/www/myweb/%n.sock

#permissions for the socket file
chmod-socket    = 666

#the variable that holds a flask application inside the module imported at line #6
callable = app

#location of log files
logto = /var/log/uwsgi/%n.log

这是我的nginx .conf文件

server {
    listen      80;
    server_name localhost;
    charset     utf-8;
    client_max_body_size 75M;

    location / { try_files $uri @yourapplication; }
    location @yourapplication {
        include uwsgi_params;
        uwsgi_pass unix:/var/www/myweb/myweb_uwsgi.sock;
    }
}

我很确定我在uWSGI ini文件中遗漏了一些内容,但我无法弄明白......

1 个答案:

答案 0 :(得分:1)

发生这种情况的原因是应用程序未初始化。尝试将admin.Admin()初始化块移离main函数以及添加视图。这很愚蠢但不是在文档中。