如何在 settings.py 文件中隐藏 EMAIL_HOST_PASSWORD?
How to hide EMAIL_HOST_PASSWORD in settings.py file?
所以,我有一个用 Django 编写的应用程序,它有一个联系页面,用户可以从那里使用 gmail 的 smtp 发送邮件。对于 settings.py 文件中的此功能,我编写了 EMAIL_HOST_PASSWORD = 'my-own-password'
,我将在 github.io 上部署我的网站。所以,我必须隐藏或加密密码。我能用它做什么?
您不能按照此处所述在 github 页面上部署 Django 应用程序:https://help.github.com/en/articles/what-is-github-pages。
如果您想在 github 上上传您的代码并且您不想分享您的密码,您可以将它放在另一个文件中并将此文件添加到您的 .gitignore
关于你的问题的两点:
- 您不能在 github 页面上部署 Django 应用程序,因为它们仅提供静态文件。检查例如Heroku,在那里部署 Django 非常容易。
- 隐藏密码和密钥最常见的做法是使用环境变量。通常,您必须在 bash 中设置一个变量,例如
export EMAIL_HOST_PASSWORD=my-own-password
然后你可以使用 os
python 模块来检索它:
import os
EMAIL_HOST_PASSWORD = os.environ.get("EMAIL_HOST_PASSWORD")
有用的视频教程:
所以,我有一个用 Django 编写的应用程序,它有一个联系页面,用户可以从那里使用 gmail 的 smtp 发送邮件。对于 settings.py 文件中的此功能,我编写了 EMAIL_HOST_PASSWORD = 'my-own-password'
,我将在 github.io 上部署我的网站。所以,我必须隐藏或加密密码。我能用它做什么?
您不能按照此处所述在 github 页面上部署 Django 应用程序:https://help.github.com/en/articles/what-is-github-pages。
如果您想在 github 上上传您的代码并且您不想分享您的密码,您可以将它放在另一个文件中并将此文件添加到您的 .gitignore
关于你的问题的两点:
- 您不能在 github 页面上部署 Django 应用程序,因为它们仅提供静态文件。检查例如Heroku,在那里部署 Django 非常容易。
- 隐藏密码和密钥最常见的做法是使用环境变量。通常,您必须在 bash 中设置一个变量,例如
export EMAIL_HOST_PASSWORD=my-own-password
然后你可以使用os
python 模块来检索它:
import os
EMAIL_HOST_PASSWORD = os.environ.get("EMAIL_HOST_PASSWORD")
有用的视频教程: