我的Django项目的密钥包含特殊字符,如#
,@
,^
,*
等我试图在/etc/environment
设置此为环境变量。如何稳健地设置Django的密钥作为一个环境变量
我在文件中包含以下内容:
export SECRET_KEY='zotpbek!*t_abkrfdpo!*^@#plg6qt-x6(%dg)9p(qoj_r45y8'
即由于它包含特殊字符(也由this SO帖子规定),所以我在字符串周围加了单引号。我退出该文件并执行source /etc/environment
。接下来我在终端输入env
:SECRET__KEY
正确显示。
我注销并重新登录。我再次输入env
。
这次SECRET_KEY
仍然显示,但被截断超过@
字符。它排除了(包括)#
字符以外的所有内容。
如何解决此问题?尝试用双引号也没有缓解任何事情。我的操作系统是Ubuntu 14.04 LTS。
p.s.我知道环境变量不支持访问控制;有很多理由不把Django密钥设置为env var。为了这个问题的目的,让我们把它放在后面。
那么为什么最初设置密钥后正确显示密钥? –