У меня есть приложение Python/фляги, работающее на апачском сервере на VPS рабочая человечность 16.04.
При доступе от сети приложение дает "внутреннюю ошибку сервера" при попытке сделать папку (названной "организациями") внутри/var/www/FlaskApp/FlaskApp. Точная ошибка от журналов Apache - это:
PermissionError: [Errno 13] Разрешение отклонил: 'организации'
Я действительно устанавливал разрешение этой папки (и папок выше ее) к 777. Разрешение отклонило ошибку, все еще сохраняется. (да, я знаю, что не должен использовать 777. Это - просто тестовый сервер. И я переключу его назад на 755 или 775, как только я выясняю то, что проблема),
Я попытался играть вокруг с другими возможными настройками разрешения. Я попытался установить пользователя 'www-данные' как владелец показанного использования папки. Я попытался установить ownerhsip групп использования www-данных. Ничто, кажется, не работает.
Если это - какое-либо использование, я использую Ubuntu 16.04 на VPS с apache2, вручающим приложение Python3/Flask. Отклоненная ошибка разрешения происходит, когда приложение фляги пытается создать папку, названную "организациями" внутри/var/www/FlaskApp/FlaskApp
Полномочия Приложения фляги установлены на 777, как полномочия всех папок выше его. Я задал этот вопрос на переполнении стека, они сказали, что это будет лучшим форумом для регистрации его.
Хорошо, таким образом, я выяснил проблему. Ответ для кого-либо еще, который может столкнуться с ним. Проблема разрешения была, вероятно, не из Linux. Это было от собственных мер безопасности Apache.
В основном папка, в которую я пытался записать, не была явно добавлена к списку каталогов в .conf файле, таким образом, это не было распознано апачем. Если Вы сталкиваетесь с этой проблемой, открываете файл YourAppName.conf в Apache (обычно в/etc/apache2/sites-available/YourAppName.conf>
Добавьте следующие строки к нему перед'</VirtualHost>
' :
<Directory /var/www/YourAppName/YourDirectory/>
Order allow,deny
Allow from all
</Directory>
YourDirectory теперь будет доступен для Apache, и Вы сможете читать из и записать в него.