2013-12-02 2 views
0

Я хочу сделать более безопасным виртуальный хост django, отключив доступ к файлам, которые не принадлежат моему проекту. Так что в основном я ищу похожие, как "php_admin_value open_basedir".Django + mod_wsgi - Как отключить доступ к файлам за пределами папки проекта?

Есть ли простой способ сделать это?

Спасибо!

ответ

2

Нет необходимости в настройке. Как и в случае Django docs state, ваш код не должен находиться в docroot в любом случае:

ЕЖЕГО в.

Если фон в простом старом PHP (без использования современных рамок), вы, вероятно, используется для ввода кода под корень документа сервера Web (в таком месте, как /var/www). С Django вы не делайте этого. Не стоит помещать какой-либо из этого кода Python в корневой каталог вашего веб-сервера, поскольку он рискует иметь возможность просматривать ваш код через Интернет в . Это не хорошо для безопасности.

Введите код в какой-либо каталог за пределами корня документа, например /home/mycode.

Единственное, что должно быть подано, это файл wsgi. Таким образом, остальные ваши файлы безопасны.

+0

Благодарим вас за ответ! В настоящее время на моей настольной ОС ubuntu я сохраняю свой проект в ** "/ home/{myuser}/django/myproject" **, но я все еще мог открывать и распечатывать такие файлы, как ** "/ home/{myuser}/secret.txt "**. Что может вызвать это? Может быть, потому что мой пользователь является администратором? Перемещение проекта на ** «/ home/myproject» ** разрешило бы это? – martincpt

+0

Что вы подразумеваете под «открывать и распечатывать» файлы? Как вы это делали? Кроме того, вам может потребоваться опубликовать ваш Apache conf. –

+0

Я сейчас не дома, я последовал этому руководству, чтобы настроить мой хор: http://youtu.be/hBMVVruB9Vs?t=18m1s «открыть и распечатать» - я имел в виду, что я смог прочитать содержимое файла с моим приложением django. – martincpt

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