Python nginx/uwsgi/flask未在模板中使用CSS文件
我有一个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配置文件: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
[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不是一个讨论论坛。你可以回答你自己的问题,接受你的答案,让别人知道什么样的解决方案对你有效(更重要的是,这个问题不会一直悬而未决)。伯翰,谢谢你让我知道如何以正确的方式解决这个问题。