logfile вызывает ошибку разрешения в приложении django, развернутом на apache - PullRequest
1 голос
/ 31 марта 2012

Я развернул Django 1.3.1 app на apache2 на моей машине, используя mod_wsgi. Я использовал для регистрации некоторых значений в приложении с помощью модуля регистрации Python, и они были записаны в файл mylog.txt в базовом каталоге приложения. .Однако я удалил этот файл и закомментировал каждый вызов log () в своем коде. На автономном сервере django приложение работает без проблем. Но когда я запускаю приложение в apache, я получаю эту запись в журнале apache

[Sat Mar 31 09:34:40 2012] [error] [client 127.0.0.1] TemplateSyntaxError: Caught IOError while rendering: [Errno 13] Permission denied: '/home/me/dev/python/django/myapp/mylog.txt'

Я не могу понять, почему это происходит, так как я закомментировал каждую строку, связанную с журналом, в коде и даже переменную, которая сообщает имя файла журнала в settings.py

Я пытался очистить кеш ... но даже это не помогло

Может кто-нибудь помочь мне разобраться?

Детали модуля указаны ниже

Apache/2.0.63 (Unix) DAV/2 mod_wsgi/3.3 Python/2.6.5 Server at 127.0.0.1 Port 80

Ответы [ 2 ]

1 голос
/ 31 марта 2012

каковы разрешения unix / linux для вашего файла mylog.txt?

ls -la /home/me/dev/python/django/myapp/mylog.txt должны отображать права доступа unix / linux.Можете ли вы вставить результаты этой команды?(обновите его в своем вопросе выше, если это возможно)

Пользователь Apache2 в вашей системе (в зависимости от того, в каком дистрибутиве Linux вы используете Mac), скорее всего, «www-data» или «http».Вам необходимо убедиться, что mylog.txt имеет правильного владельца unix / linux и правильный режим разрешений, чтобы apache2 мог записывать в этот файл журнала.

0 голосов
/ 24 апреля 2014

Я также встречал эту проблему в Webpy + Apache.И я изменил владельца каталога журналов Apache на пользователя Apache, после чего проблема решилась.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...