在浏览器Django的Nginx的静态文件缓存(Django Nginx static file c

2019-10-21 10:43发布

我想配置Nginx的利用上浏览静态文件缓存。 我的配置文件如下

server {

listen   80;
server_name localhost;

client_max_body_size 4G;

access_log /home/user/webapps/app_env/logs/nginx-access.log;
error_log /home/user/webapps/app_env/logs/nginx-error.log;

location /static/ {
    alias   /home/user/webapps/app_env/static/;
}

location /media/ {
    alias   /home/user/webapps/app_env/media/;
    }
...
}

当我在下面的缓存配置添加,服务器无法加载静态文件,我不能够重新启动我的Nginx的。

    location ~*  \.(jpg|jpeg|png|gif|ico|css|js)$ {
    expires 365d;
}

nginx的错误日志显示的open() “在/ usr /共享/ nginx的/ HTML /媒体/ cover_photos / 292f109e-17ef-4d23-b0b5-bddc80708d19_t humbnail.jpeg” 失败(2:没有这样的文件或目录)

我在网上做了相当长的一段研究,但解决不了这个问题。

谁能帮助我或者只是给我的Nginx的实施静态文件缓存一些建议吗? 谢谢!

Answer 1:

缓存静态文件,我会建议你做这样

location /static/ {
  alias /home/ubuntu/app/staticfiles/;
  expires 365d;
}

对于“没有这样的文件或目录”都运行错误

    ./manage.py collectstatic


Answer 2:

也许运行./manage.py collectstatic



文章来源: Django Nginx static file caching on browser