如何在settings.py文件中隐藏EMAIL_HOST_PASSWORD?

时间:2019-07-14 14:29:29

标签: python django passwords

因此,我有一个用Django编写的应用程序,它有一个联系页面,用户可以在其中使用gmail的smtp发送邮件。为了在settings.py文件中实现此功能,我编写了EMAIL_HOST_PASSWORD = 'my-own-password',然后将站点部署在github.io上。因此,我必须隐藏或加密密码。我该怎么办?

2 个答案:

答案 0 :(得分:0)

您不能按照以下说明在github页面上部署django应用程序:https://help.github.com/en/articles/what-is-github-pages

如果要在github上上传代码,并且不想共享密码,可以将其放在另一个文件中,然后将此文件添加到.gitignore

答案 1 :(得分:0)

关于您的问题的两件事:

  1. 您无法在github页面上部署Django应用,因为它们仅提供静态文件。检查例如Heroku,在那里部署Django很容易。
  2. 隐藏密码和秘密密钥的最常见做法是使用环境变量。通常,您必须在bash中设置一个变量,例如export EMAIL_HOST_PASSWORD=my-own-password,然后您可以使用os python模块来检索它:
import os

EMAIL_HOST_PASSWORD = os.environ.get("EMAIL_HOST_PASSWORD")

有用的视频教程: