Python 如何在settings.py文件中隐藏电子邮件\u主机\u密码?

Python 如何在settings.py文件中隐藏电子邮件\u主机\u密码?,python,django,passwords,Python,Django,Passwords,因此,我有一个用Django编写的应用程序,它有一个联系人页面,用户可以从该页面使用gmail的smtp发送邮件。为了在settings.py文件中实现这一功能,我编写了EMAIL\u HOST\u PASSWORD='my own PASSWORD',我将在github.io上部署我的站点。所以,我必须隐藏或加密密码。我该怎么办?您不能在github页面上部署django应用程序,如下所述: 如果您想在github上上传您的代码,但不想共享您的密码,您可以将其放入另一个文件中,并将此文件添加到

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

您不能在github页面上部署django应用程序,如下所述:


如果您想在github上上传您的代码,但不想共享您的密码,您可以将其放入另一个文件中,并将此文件添加到您的
。gitignore

关于您的问题,有两件事:

  • 您无法在github页面上部署Django应用程序,因为它们只提供静态文件。检查例如Heroku,在那里部署Django非常容易
  • 隐藏密码和密钥的最常见做法是使用环境变量。通常,您必须在bash中设置一个变量,例如
    export EMAIL\u HOST\u PASSWORD=my own PASSWORD
    ,然后您可以使用
    os
    python模块来检索它:
  • 导入操作系统
    EMAIL\u HOST\u PASSWORD=os.environ.get(“EMAIL\u HOST\u PASSWORD”)
    
    有用的视频教程:


    真是个坏消息。那么有没有像github页面这样的免费服务@louisldI通过在Internet上的快速搜索找到此:。但是你可以使用一年免费的亚马逊网络服务。