Django 上线部署注意事项(全)

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

1. 生产环境,即 DEBUG=False

2.静态文件

        在settings文件中:

STATICFILES_DIRS = [ 
            os.path.join(BASE_DIR, "static/"),
			]
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, "static_new/")

# 注意:STATIC_ROOT 不能和 STATICFILES_DIRS重复 


3. media 文件

MEDIA_URL = "/media/"
# media配置,用户上传的文件都默认放在这个文件夹下
MEDIA_ROOT = os.path.join(BASE_DIR, "media")

4. urls.py中添加url,包括staticmedia两部分

from django.views.static import serve

url(r'^static/(?P<path>.*)$', serve, {"document_root": settings.STATIC_ROOT}),
url(r'^media/(?P<path>.*)$', serve, {"document_root": settings.MEDIA_ROOT}),

5. 运行  python manage.py collectstatic 收集的静态文件目录


6 . 添加 CSRF_TRUSTED_ORIGINS 配置,并将你的域名添加进去:

CSRF_TRUSTED_ORIGINS = [
    'http://www.xxxx.com',  # 添加你的域名
    'https://www.xxxx.com'  # 如果使用 HTTPS 协议,则也需要加上
]

7 . 配置 ALLOWED_HOSTS,也可以在同一个文件里添加或更新它,以确保 Django 允许该域名访问:

ALLOWED_HOSTS = [
    'www.xxxxx.com',
    'xxxx.com'  # 如果需要无 www 前缀的访问
    '*' # 允许任何主机访问
]

  8 . 处理跨域请求

        安装corsheaders

pip install django-cors-headers

          配置settings

INSTALLED_APPS = [
    'xxxxxxxx',
    'dxxxxxx',
    'xxxxxxxx',
    'xxxx',
    'corsheaders',# 注册app corsheaders
]

MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'corsheaders.middleware.CorsMiddleware', # 加入中间键 位置必须在这里 不能在其他位置
    'django.middleware.common.CommonMiddleware',
    # 'django.middleware.csrf.CsrfViewMiddleware', 如果你的项目没有考虑到 csrf 网络攻击,可注释掉,否则会报错没有传递 csrf cookie
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]

# 具体情况可以更具实际需求来配置
CORS_ALLOW_CREDENTIALS = True
CORS_ALLOW_ALL_ORIGINS = True
CORS_ALLOW_HEADERS = '*'

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

britlee

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值