我正在尝试使用nginx作为反向代理和服务员作为应用程序服务器托管Django Web应用程序。我正在Windows上运行它。
静态javascript资产可以在页面上正确加载,但是css无法加载。我曾尝试在刷新页面之前清除缓存,但这不是问题,因为开发人员工具显示了该页面正确地从服务器中提取了CSS文件。另外,我尝试直接导航到“ http://localhost:8888/static/css/styles.css”,并且可以看到文件的内容。
有人知道为什么浏览器会正确提取文件但不将其显示在页面上吗?
nginx.conf
server {
# Running port
listen 8888;
# Settings to serve static files
location ^~ /static {
alias "C:\\Users\\username\\Desktop\\django-dev\\appname\\static\\";
}
# Proxy connections to the application servers
# app_servers
location / {
proxy_pass http://127.0.0.1:8081;
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;
}
请求我进行:http://localhost:8888/static/css/styles.css
html样式表参考
<link rel="stylesheet" type="text/css" href="/static/css/styles.css">
编辑:我已解决此问题以供将来参考。 nginx通过不正确的标头通过css发送,所以出现了mime类型错误。在我的nginx.conf的HTTP块中添加“ include mime.types”即可解决该问题。