Невозможно загрузить файлы с Django и apache modwsgi - PullRequest
0 голосов
/ 22 февраля 2012

Мне недавно пришлось удалить сервер разработки Django и перейти на apache из-за некоторых проблем с тегом видео html5.

Изменение привело к ошибке [Errno 13] Permission denied при попытке загрузить видео впапка мультимедиа.

Я уже рекурсивно установил папку мультимедиа на 777 с помощью chmod и дал разрешения группе www-data с помощью chgrp;Вот вывод при выполнении ls -lha media/

total 12K
drwxrwxrwx  3 esteban www-data 4,0K 2012-02-22 06:44 .
drwxr-xr-x 10 esteban esteban  4,0K 2012-02-22 07:35 ..
drwxrwxrwx  3 esteban www-data 4,0K 2012-02-13 10:12 generated

Я также написал следующую директиву в файле httpd.conf:

<Directory /home/esteban/python_projects/video_transform/media>
Options +Indexes
Order allow,deny
Allow from all
</Directory>

Это позволяет мне просматривать содержимое папки при просмотредо http://localhost/media, но пока безуспешно с загрузкой.

Любые идеи ??

РЕДАКТИРОВАТЬ: В этой строке выдается исключение:

destination = open('media/' + filename, 'wb+')

Ответы [ 2 ]

2 голосов
/ 23 февраля 2012

Используйте абсолютный путь, как предложено в комментарии.Прочтите документацию по адресу:

http://code.google.com/p/modwsgi/wiki/ApplicationIssues#Application_Working_Directory

. Почему?

0 голосов
/ 22 февраля 2012

Я бы протестировал переключение директивы Order в вашей конфигурации Apache.В текущем случае директива deny, хотя и не определена явно, идет после директивы Allow и эффективно блокирует весь трафик.Изменение директивы Order как таковой должно решить проблему:

<Directory /home/esteban/python_projects/video_transform/media>
Options +Indexes
Order deny,allow
Allow from all
</Directory>
...