Skip to content Skip to sidebar Skip to footer

Django Nginx Static Files 404

Here are my settings : STATIC_URL = '/static/' STATICFILES_DIRS = ( os.path.join(BASE_DIR, 'static'), ) STATIC_ROOT = '/home/django-projects/tshirtnation/staticfiles' Here's

Solution 1:

I encountered the same problem and was able to fix my nginx configuration by removing the trailing / from the /static/ location.

location /static {  # "/static" NOT "/static/"# ...
}

Solution 2:

Try adding the ^~ prefix modifier to your static location to skip checking regular expressions:

location ^~ /static/ {
    alias /home/django-projects/tshirtnation/staticfiles/;
}

Solution 3:

In your settings.py, put this:

STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder'
)
STATIC_ROOT = "/home/django-projects/tshirtnation/staticfiles/"
STATIC_URL = '/static/'

You don't need this:

STATICFILES_DIRS = ...

Solution 4:

settings.py:

ALLOWED_HOSTS = ['*']

STATIC_URL = '/static/'STATIC_ROOT = '/home/calosh/PycharmProjects/Proyecto_AES/static/'MEDIA_ROOT = '/home/calosh/PycharmProjects/Proyecto_AES/media/'MEDIA_URL = '/media/'

In the nginx configurations(/etc/nginx/sites-enabled/default)

server {
    server_name localhost;

    access_log off;

    location /static/ {
        alias /home/calosh/PycharmProjects/Proyecto_AES/static/;
    }

    location / {
            proxy_pass http://127.0.0.1:8000;
            proxy_set_header X-Forwarded-Host $server_name;
            proxy_set_header X-Real-IP $remote_addr;
            add_header P3P 'CP="ALL DSP COR PSAa PSDa OUR NOR ONL UNI COM NAV"';
    }
}

Then restart the nginx server:

sudo service nginx restart

And run gunicorn:

gunicorn PFT.wsgi

Serves the application on localhost or the entire local network (on port 80).

http://127.0.0.1/

Solution 5:

I think browser tries to find your static in:

http://127.0.0.1:8001/static/

While nginx by default work on 80 port.

You need to define 8001 port in nginx config or run django server on 80 port.

Post a Comment for "Django Nginx Static Files 404"