My Server block is not serving the static files

Posted July 5, 2021 42 views

here my server block

server {
    listen 80;

    location = /favicon.ico { access_log off; log_not_found off; }
    location /static/ {
        root /home/ajay/my_site/staticfiles;

    location / {
        include proxy_params;
        proxy_pass http://unix:/run/gunicorn.sock;

It is giving me this error:

404 Not Found
nginx/1.18.0 (Ubuntu)

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Submit an Answer
1 answer

Hi there @ajayaallen,

The way that you have this setup means that your static files should be located at /home/ajay/my_site/staticfiles/static/. The location part gets appended to the root path.

If your static files are stored at the /home/ajay/my_site/staticfiles/ directory directly. What you could do is to rename the folder to /home/ajay/my_site/static/ and then update your location to:

    location /static/ {
        root /home/ajay/my_site/;

For more information, you could take a look that the official documentation here.

Hope that this helps.