Я пытаюсь разработать веб-приложение django, которое будет использоваться локально там, где я работаю. проблема в том, что есть некоторые отчеты, которые я трансформирую, чтобы быть основанными на HTML. некоторые из данных, которые используются в моем приложении, существуют в файлах excel, расположенных на сетевом диске.развернуто приложение apache + django для доступа к локальным файлам за пределами каталога проекта
В разработке я могу получить доступ ко всем файлам без каких-либо проблем с абсолютным путем. Пример: «Z: /dataFile.xls». при развертывании моего приложения на сервере apache + mod_wsgi я продолжаю получать сообщение об ошибке, что файл не найден. Я проверил несколько ответов, и все они, похоже, сосредоточены на статических файлах в самом каталоге проекта.
моя установка:
- окна 7 (64 бит)
- питона 3,5 (64)
- Джанго 1,8
- апач 2.4.20-win64-VC14
- mod_wsgi-4,4 .23 + ap24vc14
приложение развертывается без проблем при перемещении файлов внутри e статические файлы приложения, которые я могу прочитать без проблем. проблема заключается только в том, что я пытаюсь читать из внешнего местоположения (т. е. сетевого диска или просто с диска C, но дающего абсолютный путь к файлу, как я упомянул)
Эти файлы должны быть прочитаны из этих мест, потому что пользователи редактируют их, и эти значения включены в этот отчет.
Если у кого-то есть лучшее решение, позволяющее пользователю редактировать файлы, и в то же время приложение может их прочитать.
спасибо.
Apache по умолчанию не может обращаться к файлам за пределами своей ограниченной экосистемы. Если вы хотите получить доступ к содержимому файловой системы, вам нужно настроить его для этого. См. Также: http://askubuntu.com/questions/325498/apache-cant-access-folders-in-my-home-directory – Ivan
Является ли сервером Apache на том же компьютере, что и ваш dev-сервер? Если да, используете ли вы какую-либо виртуальную машину или докер или что-нибудь, что может «изолировать» ваш сервер и предотвратить доступ к файловой системе? – raphv
в настоящее время да, мой сервер Apache находится на том же компьютере, что и мой dev-сервер. Это моя первая разработка django-приложения, и я был на этапе тестирования о том, как ее использовать для производства. нет виртуальных машин. даже django не используется как virtualenv. все они существуют на одной физической машине. –