2017-09-01 74 views
0

我在加载EC2实例中的静态文件时总是收到404错误。我搜索了几个小时,试图实施各种建议,但没有任何工作。Django静态文件在生产中未加载

enter image description here

以下是我不同的文件的配置:

settings.py

STATIC_URL = '/static/' 
STATIC_ROOT = os.path.join(BASE_DIR, 'static') 
LOGIN_REDIRECT_URL = '/' 

HTML

{% extends "base.html" %} 
{% load staticfiles %} 

{% block extra_head %} 
    <link rel="stylesheet" type="text/css" href="//cdn.datatables.net/1.10.12/css/jquery.dataTables.css"> 
    <script type="text/javascript" charset="utf8" src="//cdn.datatables.net/1.10.12/js/jquery.dataTables.js"></script> 
    <script src="{% static "ddv_example/ddv_example_1_10.js" %}"></script> 
    <script type="text/javascript"> 

nginx.conf

location /static/admin { 
     alias /usr/local/virtualenvs/mysite/lib/python2.7/site-packages/django/contrib/admin/static/admin; 
    } 

    location /static/rest_framework { 
     alias /usr/local/virtualenvs/mysite/lib/python2.7/site-packages/rest_framework/static/rest_framework; 
    } 

    location /static { 
     alias /usr/local/apps/mysite/src/mysite/mysite/static; 
    } 


    location /static/ddv_example { 
     alias /usr/local/apps/mysite/src/mysite/mysite/static/ddv_example; 
    } 

有什么建议我错过了什么?

+0

将'static/ddv_example'放在'/ static'上面的nginx配置中。 –

+0

你运行过'python manage.py collectstatic'命令吗? –

+0

做了上述两个步骤。它仍然不起作用。 – Prasanna

回答

0

我错过了重新运行sudo ./server_setup.sh。只有脚本重新运行时,nginx配置才会生效。