Python nginx/uwsgi/flask未在模板中使用CSS文件

Python nginx/uwsgi/flask未在模板中使用CSS文件,python,nginx,flask,uwsgi,selinux,Python,Nginx,Flask,Uwsgi,Selinux,我有一个flask应用程序,我正在尝试运行CentOS 6.6、Python 6.6、uwsgi 2.0.8和nginx 1.0.15。我禁用了selinux 它使用flask运行,但在尝试使用nginx进行设置时,它显示了网站,但没有应用任何CSS文件 如果我查看网页源代码,它正确地链接到CSS文件('/static/CSS/style.CSS'),如果我从源代码打开它们,它会打开它们,但不会将它们应用到网页。不过,它会加载图像并显示它 我正在使用WSGIINI文件运行它。($flask/bi

我有一个flask应用程序,我正在尝试运行CentOS 6.6、Python 6.6、uwsgi 2.0.8和nginx 1.0.15。我禁用了selinux

它使用flask运行,但在尝试使用nginx进行设置时,它显示了网站,但没有应用任何CSS文件

如果我查看网页源代码,它正确地链接到CSS文件('/static/CSS/style.CSS'),如果我从源代码打开它们,它会打开它们,但不会将它们应用到网页。不过,它会加载图像并显示它

我正在使用WSGIINI文件运行它。($flask/bin/uwsgi--ini-uwsgi.ini)

我的wsgi.ini配置文件:

[uwsgi]
socket = 127.0.0.1:5000
chdir = /home/apps/portal
home = /home/apps/portal/flask
module = app:app
master = true
enable-threads = True
processes = 5
vacuum = True
worker_processes 1;

events {

    worker_connections 1024;

}

http {

    sendfile on;
    gzip              on;
    gzip_http_version 1.0;
    gzip_proxied      any;
    gzip_min_length   500;
    gzip_disable      "MSIE [1-6]\.";
    gzip_types        text/plain text/xml text/css
                      text/comma-separated-values
                      text/javascript
                      application/x-javascript
                      application/atom+xml;

    upstream uwsgicluster {

        server 127.0.0.1:5000;

    }

    server {

        listen 80;
        server_name localhost;
        charset utf-8;

        location /static  {

            alias /home/apps/portal/app/static;

        }

        location / {

            include            uwsgi_params;
            uwsgi_pass         uwsgicluster;

            uwsgi_param        UWSGI_CHDIR /home/apps/portal;
            uwsgi_param        UWSGI_PYHOME /home/apps/portal/flask;
            uwsgi_param        UWSGI_MODULE portal;
            uwsgi_param        UWSGI_CALLABLE app;

            proxy_redirect     off;
            proxy_set_header   Host $host;
            proxy_set_header   X-Real-IP $remote_addr;
            proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header   X-Forwarded-Host $server_name;

        }
    }
}
110.143.38.80 - - [22/Dec/2014:12:23:26 +1000] "GET /user/admin HTTP/1.1" 200 3279 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36"
110.143.38.80 - - [22/Dec/2014:12:23:26 +1000] "GET /static/css/style.css HTTP/1.1" 200 1541 "http://*.*.*.*/user/admin" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36"
110.143.38.80 - - [22/Dec/2014:12:23:26 +1000] "GET /static/js/moment.min.js HTTP/1.1" 200 13111 "http://*.*.*.*/user/admin" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36"
110.143.38.80 - - [22/Dec/2014:12:23:26 +1000] "GET /static/js/bootstrap.min.js HTTP/1.1" 200 11339 "http://*.*.*.*/user/admin" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36"
110.143.38.80 - - [22/Dec/2014:12:23:26 +1000] "GET /static/css/bootstrap.min.css HTTP/1.1" 200 23863 "http://*.*.*.*/user/admin" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36"
110.143.38.80 - - [22/Dec/2014:12:23:26 +1000] "GET /static/upload/avatars/admin_guyfawkes.jpg HTTP/1.1" 200 38039 "http://*.*.*.*/user/admin" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36"

我的nginx配置文件:

[uwsgi]
socket = 127.0.0.1:5000
chdir = /home/apps/portal
home = /home/apps/portal/flask
module = app:app
master = true
enable-threads = True
processes = 5
vacuum = True
worker_processes 1;

events {

    worker_connections 1024;

}

http {

    sendfile on;
    gzip              on;
    gzip_http_version 1.0;
    gzip_proxied      any;
    gzip_min_length   500;
    gzip_disable      "MSIE [1-6]\.";
    gzip_types        text/plain text/xml text/css
                      text/comma-separated-values
                      text/javascript
                      application/x-javascript
                      application/atom+xml;

    upstream uwsgicluster {

        server 127.0.0.1:5000;

    }

    server {

        listen 80;
        server_name localhost;
        charset utf-8;

        location /static  {

            alias /home/apps/portal/app/static;

        }

        location / {

            include            uwsgi_params;
            uwsgi_pass         uwsgicluster;

            uwsgi_param        UWSGI_CHDIR /home/apps/portal;
            uwsgi_param        UWSGI_PYHOME /home/apps/portal/flask;
            uwsgi_param        UWSGI_MODULE portal;
            uwsgi_param        UWSGI_CALLABLE app;

            proxy_redirect     off;
            proxy_set_header   Host $host;
            proxy_set_header   X-Real-IP $remote_addr;
            proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header   X-Forwarded-Host $server_name;

        }
    }
}
110.143.38.80 - - [22/Dec/2014:12:23:26 +1000] "GET /user/admin HTTP/1.1" 200 3279 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36"
110.143.38.80 - - [22/Dec/2014:12:23:26 +1000] "GET /static/css/style.css HTTP/1.1" 200 1541 "http://*.*.*.*/user/admin" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36"
110.143.38.80 - - [22/Dec/2014:12:23:26 +1000] "GET /static/js/moment.min.js HTTP/1.1" 200 13111 "http://*.*.*.*/user/admin" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36"
110.143.38.80 - - [22/Dec/2014:12:23:26 +1000] "GET /static/js/bootstrap.min.js HTTP/1.1" 200 11339 "http://*.*.*.*/user/admin" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36"
110.143.38.80 - - [22/Dec/2014:12:23:26 +1000] "GET /static/css/bootstrap.min.css HTTP/1.1" 200 23863 "http://*.*.*.*/user/admin" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36"
110.143.38.80 - - [22/Dec/2014:12:23:26 +1000] "GET /static/upload/avatars/admin_guyfawkes.jpg HTTP/1.1" 200 38039 "http://*.*.*.*/user/admin" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36"

nginx访问日志文件(/var/log/nginx/access.log):

[uwsgi]
socket = 127.0.0.1:5000
chdir = /home/apps/portal
home = /home/apps/portal/flask
module = app:app
master = true
enable-threads = True
processes = 5
vacuum = True
worker_processes 1;

events {

    worker_connections 1024;

}

http {

    sendfile on;
    gzip              on;
    gzip_http_version 1.0;
    gzip_proxied      any;
    gzip_min_length   500;
    gzip_disable      "MSIE [1-6]\.";
    gzip_types        text/plain text/xml text/css
                      text/comma-separated-values
                      text/javascript
                      application/x-javascript
                      application/atom+xml;

    upstream uwsgicluster {

        server 127.0.0.1:5000;

    }

    server {

        listen 80;
        server_name localhost;
        charset utf-8;

        location /static  {

            alias /home/apps/portal/app/static;

        }

        location / {

            include            uwsgi_params;
            uwsgi_pass         uwsgicluster;

            uwsgi_param        UWSGI_CHDIR /home/apps/portal;
            uwsgi_param        UWSGI_PYHOME /home/apps/portal/flask;
            uwsgi_param        UWSGI_MODULE portal;
            uwsgi_param        UWSGI_CALLABLE app;

            proxy_redirect     off;
            proxy_set_header   Host $host;
            proxy_set_header   X-Real-IP $remote_addr;
            proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header   X-Forwarded-Host $server_name;

        }
    }
}
110.143.38.80 - - [22/Dec/2014:12:23:26 +1000] "GET /user/admin HTTP/1.1" 200 3279 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36"
110.143.38.80 - - [22/Dec/2014:12:23:26 +1000] "GET /static/css/style.css HTTP/1.1" 200 1541 "http://*.*.*.*/user/admin" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36"
110.143.38.80 - - [22/Dec/2014:12:23:26 +1000] "GET /static/js/moment.min.js HTTP/1.1" 200 13111 "http://*.*.*.*/user/admin" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36"
110.143.38.80 - - [22/Dec/2014:12:23:26 +1000] "GET /static/js/bootstrap.min.js HTTP/1.1" 200 11339 "http://*.*.*.*/user/admin" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36"
110.143.38.80 - - [22/Dec/2014:12:23:26 +1000] "GET /static/css/bootstrap.min.css HTTP/1.1" 200 23863 "http://*.*.*.*/user/admin" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36"
110.143.38.80 - - [22/Dec/2014:12:23:26 +1000] "GET /static/upload/avatars/admin_guyfawkes.jpg HTTP/1.1" 200 38039 "http://*.*.*.*/user/admin" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36"

由于Gohn67的建议,我在加载页面后检查了开发人员控制台。控制台报告: “解释为样式表但使用MIME类型text/plain传输的资源”


之后我插入了
include/etc/nginx/mime.types编码到nginx conf文件中,一切正常。

Chrome/FF/IE开发人员控制台怎么说?特别是网络标签?例如,css文件是否加载为200?或者他们根本没有加载?你太棒了。“网络”选项卡上说他们加载的是200,但控制台上说“资源被解释为样式表,但使用MIME类型text/plain传输”。在nginx conf文件中插入“include/etc/nginx/mime.types;”之后,一切正常。非常感谢。请不要在问题的标题中添加
SOLVED
之类的内容。StackOverflow不是一个讨论论坛。你可以回答你自己的问题,接受你的答案,让别人知道什么样的解决方案对你有效(更重要的是,这个问题不会一直悬而未决)。伯翰,谢谢你让我知道如何以正确的方式解决这个问题。