我可以安全地将我离线生成的settings.py文件复制到我的远程服务器吗? [关闭]

问题描述 投票:1回答:3

所以我将我的项目从离线目录移动到Digital Ocean上的远程服务器。有什么我需要关注的吗?例如,我是否可以保持离线生成的SECRET_KEY相同?还有什么我需要担心的吗?

python django
3个回答
1
投票

django documentation应该回答这个问题:

确保生产中使用的密钥不会在其他任何地方使用,并避免将其提交给源代码管理。

此外,不要忘记set DEBUG to False

请随意阅读本文档的其余部分。它会告诉你该做什么(不是硬编码你的SECRET_KEY),如果可以包含其他有用的信息。


我建议的另一种方法是使用AnsiblePuppet等自动化部署。

有了这样的软件,您可以轻松地:

  • 自动替换DEBUG值以确保它是False
  • 生成SECRET_KEY值(自动)。

但一般来说,手动复制你的settings.py并自己进行更改是完全可以的。只是不要忘记更改值。


1
投票

是的,您可以复制settings.py的全部内容,但首先删除SECRET_KEY并将DEBUG设置为FALSE。


0
投票

使用开发时使用的相同SECRET_KEY通常不被视为安全。你可以在settings.py中执行此操作

# SECRET_KEY = 'cg#p$g+j9tax!#a3cup@1$8obt2_+&k3q+pmu)5%asj6yjpkag'
import os
SECRET_KEY = os.environ.get('DJANGO_SECRET_KEY', 'cg#p$g+j9tax!#a3cup@1$8obt2_+&k3q+pmu)5%asj6yjpkag')

并且不要忘记设置DEBUG = False。这是另一种方法

# DEBUG = True
DEBUG = bool( os.environ.get('DJANGO_DEBUG', True) )

资料来源:https://developer.mozilla.org/en-US/docs/Learn/Server-side/Django/Deployment

© www.soinside.com 2019 - 2024. All rights reserved.