use*_*324 3 wsgi github secret-key flask
我正在构建一个 Flask Web 应用程序,并希望将其放在 github 存储库中。
我注意到在 .wsgi 文件中
#!/usr/bin/python
import sys
import logging
logging.basicConfig(stream=sys.stderr)
sys.path.insert(0,"/var/www/hashchain/")
from hashchain import app as application
application.secret_key = 'super secret key'
Run Code Online (Sandbox Code Playgroud)
有一个 application.secret_key 用于加密...
我猜测将flask web应用程序放在github上的标准方法包括克隆整个flask应用程序文件夹而不是.wsgi文件?
这样,贡献者可以在他们自己的本地主机上以调试模式自由运行 Flask 以进一步开发它,如果他们真的想要可以将它部署到他们自己的服务器(但必须编写他们自己的 .wsgi 文件和配置在他们的控制下的服务器) )。
这是正确的思考方式吗?我猜如果我把 .wsgi 文件放在 github 上,它会是黑客的开放季节吗?
执行此操作的一般方法是从环境变量中读取:
import os
application.secret_key = os.getenv('SECRET_KEY', 'for dev')
Run Code Online (Sandbox Code Playgroud)
请注意,它还为开发设置了默认值。
您可以SECRET_KEY手动设置环境变量:
$ export SECRET_KEY=you_key_here # use $ set ... in Windows
Run Code Online (Sandbox Code Playgroud)
或者您可以将其保存.env在项目根目录的文件中:
SECRET_KEY=you_key_here
Run Code Online (Sandbox Code Playgroud)
将其添加到.gitignore:
.env
Run Code Online (Sandbox Code Playgroud)
然后你可以使用python-dotenv或类似的东西来导入变量:
# pip install python-dotenv
import os
from dotenv import load_dotenv
load_dotenv()
application.secret_key = os.getenv('SECRET_KEY', 'for dev')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2020 次 |
| 最近记录: |