我有两台机器,一台是 nginx (ip:192.168.239.139),另一台是 django (ip:192.168.239.140),其中逻辑代码实际上是。他们通过 wsgi 相互通信。当请求进来时,nginx将请求转发给django,这很好,但是像/ images / js / css这样的静态文件无法加载。我试图修改django settting.py一遍又一遍但没有帮助,我读了很多关于这个问题的文章都没用,因为他们的服务器名都是nginx.conf中的'localhost',这意味着他们的静态文件在nginx服务器内的同一台机器上,但是我的是独立的。另外,无论nginx如何,我只运行python manage.py runserver
,并且正确加载了静态文件,这是我的代码:
nginx.conf:
http {
include mime.types;
default_type application/octet-stream;
upstream realservers{
server 192.168.239.140:8080;
#server 192.168.239.138:8000;
}
server {
listen 80;
server_name localhost;
location / {
include uwsgi_params;
uwsgi_pass realservers;
}
}
}
django setting.py:
STATICFILES_FINDERS=(
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder'
)
#STATICFILES_DIRS = (
# os.path.join(BASE_DIR,'../static/'),
# '/usr/local/lib/python3.4/site-packages/rest_framework_swagger/static/rest_framework_swagger/',
#)
STATIC_ROOT= os.path.join(BASE_DIR,'/static/')
STATIC_URL = '/static/'
我的静态目录在我的项目的根目录下与manage.py
相同那么,任何人都可以帮我解决这个问题吗?我会很感激的!