2014-10-09 5 views
1

Я работаю над приложением Django. Я хочу поместить SECRET_KEY в переменные окружения. Я добавил это в файл .bashrc:Ошибка настройки переменных окружения

export SECRET_KEY=sdfsjhsuresfsdf 

двутавровых сделал source .bashrc

Я могу получить доступ к переменной окружения из питона оболочки с помощью:

import os 
os.environ['SECRET_KEY'] 

Но это показывает keyError когда я пытаюсь получить к нему доступ из файла settings.py. Что я делаю не так?

ответ

0

Try:

export SECRET_KEY=sdfsjhsuresfsdf 

Затем повторно источник. И запустите новый экземпляр Python. Затем он должен быть виден.

Bash не всегда автоматически экспортирует свои переменные.

В общем, переменные окружения ОС - это трудное место для надежной передачи информации конфигурации из-за таких проблем. Трудно определить, почему переменные видны или не видны. Чтение информации о конфигурации из файлов конфигурации (будь то .ini, .json или какой-либо другой формат) является более надежным. Но переменные среды очень часто используются, поэтому, когда в Риме ...

+0

По-прежнему такая же ошибка. Есть ли другой способ безопасно поставить ключи? – toothie

+0

Выпадение из Python, в оболочку bash. Запустите 'echo $ SECRET_KEY'. Это покажет вам, правильно ли оболочка знает об этой переменной. Является ли приложение Django запущено из оболочки, которая правильно настроена SECRET_KEY? –

+0

Он перекликается с правильным ключом. – toothie

Смежные вопросы