django服务常见问题-跨域和静态文件配置

 

1.跨域问题

pip install django-cors-headers 模块

setting配置apps和中间件、

'corsheaders',

 

 

 'corsheaders.middleware.CorsMiddleware', # 放最前面

 

 

 跨域

CORS_ORIGIN_ALLOW_ALL = True

CORS_ALLOW_CREDENTIALS= True

 

 

 

2.静态文件迁移和显示配置

dubug = False

配置url

from django.conf import setting
# url里添加 re_path(r
'^static/(?P<path>.*)$', serve, {'document_root': settings.STATIC_ROOT}, name='static')

 

settings配置static

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

STATICFILES_DIRS = (
    os.path.join(BASE_DIR, '/static/'),
)

静态文件迁移

# 1.创建文件夹 static,和setting配置路径对应
# 2.使用命令 python manage.py collectstatic
# 迁移成功
# 可能报错原因,static文件夹路由不正确

用nginx部署配置静态

events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    server {
        listen 8000;
        server_name  127.0.0.1; # 改为自己的域名,没域名修改为127.0.0.1:80
        charset utf-8;
        location / {
           include uwsgi_params;
           uwsgi_pass 127.0.0.1:8808;  # 端口要和uwsgi里配置的一样
           uwsgi_param UWSGI_SCRIPT api.wsgi;  #wsgi.py所在的目录名+.wsgi
           uwsgi_param UWSGI_CHDIR /home/project/api/; # 项目路径
        }
        # 新增的配置静态文件
        location /static {
            alias /home/project/luffyapi/luffyapi/static;
        }
    }
}

 

posted @ 2020-12-29 16:47  小王八+1  阅读(355)  评论(0编辑  收藏  举报