Не может статистика 'направление', разрешение, отклоненное, когда разрешение будет установлено

Терпите меня, я все еще плохо знаком с Linux. У меня есть веб-сервер, который пытается получить доступ к общедоступной папке в соответствии с пользовательской учетной записью.

Проблема

Я выполняю nginx сервер, который пытается получить доступ к странице обслуживания в, приложения совместно использовали общедоступную папку и получают отклоненные ошибки разрешения.

Основы

  • Пользователь приложения: quotr и основная группа: app
  • Пользователь веб-сервера: ubuntu и основная группа: www-data
  • Приложение домой: /home/quotr/app
  • Приложение совместно использовало общедоступную папку: /home/quotr/app/shared
  • Полный путь файла обслуживания: /home/quotr/app/shared/public/system/maintenance.html

Группы:

Я первоначально только добавил www-data группа к app группа, надеющаяся устранить проблему. Когда это не работало, я также добавил группу, идущую другим путем.

www-data:x:33:apache,quotr
ubuntu:x:1000:
app:x:1001:quotr,ubuntu,www-data

Владение

Владение для целого дерева приложения принадлежит quotr:app. Когда я начал получать проблемы разрешения, я изменил владение вперед public/system/maintenance.html часть пути к странице обслуживания (/home/quotr/app/shared/public/system/maintenance.html) к quotr:www-data.

Полномочия

Запуск в /var/www/quotr-public и прокладывание себе путь вниз:

# ls -la
drwxr-xr-x 4 quotr www-data 4096 Mar  3 21:49 .
drwxr-xr-x 5 quotr www-data 4096 Mar  3 21:49 ..
drwxr-xr-x 5 quotr www-data 4096 Mar  4 16:00 assets
drwxr-xr-x 3 quotr www-data 4096 Mar  4 19:03 system

# cd to system ls -la
drwxr-xr-x 3 quotr www-data 4096 Mar  4 19:03 .
drwxr-xr-x 4 quotr www-data 4096 Mar  3 21:49 ..
-rwxr-x--- 1 quotr www-data 3004 Mar  4 19:03 maintenance.html
drwxr-xr-x 3 quotr www-data 4096 Mar  3 21:51 pictures

Тестирование

Я тестирую полномочия с помощью следующей команды:

sudo -u www-data stat /home/quotr/app/shared/public/

который приводит к отклоненному разрешению.

Последний рубеж

Как последняя попытка, я создал следующую символьную ссылку:

quotr-public -> /home/quotr/app/shared/public/

Который я могу выполнить следующее успешно, но не глубже:

sudo -u www-data stat /var/www/quotr-public

Я в полной растерянности того, что проблема в этой точке. Любое руководство значительно ценилось бы.

Редактирование 1

Я продолжил пукать вокруг с полномочиями, таким образом, они могли бы быть небольшим различием, но см. ниже вывод, который требуют. Вывод 'namei-lx /home/quotr/app/shared/public/system/maintenance.html'

Drwxr-xr-x root  root     /
drwxr-xr-x root  root     home
drwx------ quotr app      quotr
drwxr-xr-x quotr app      app
drwxr-xr-x quotr www-data shared
drwxr-xr-x quotr www-data public
drwxr-xr-x quotr www-data system
-rw-r--r-- quotr app      maintenance.html

Вывод 'namei-lx /var/www/quotr-public/system/maintenance.html'

Drwxr-xr-x root   root     /
drwxr-xr-x root   root     var
drwxrwsr-x root   www-data www
lrwxrwxrwx ubuntu www-data quotr-public -> /home/quotr/app/shared/public/
Drwxr-xr-x root   root       /
drwxr-xr-x root   root       home
drwx------ quotr  app        quotr
drwxr-xr-x quotr  app        app
drwxr-xr-x quotr  www-data   shared
drwxr-xr-x quotr  www-data   public
drwxr-xr-x quotr  www-data system
-rw-r--r-- quotr  app      maintenance.html

Спасибо.

2
задан 6 March 2017 в 09:57

1 ответ

Я думаю, что у Вас почти был он там со справкой от muru. Все папки в дереве действительно должны быть исполняемым файлом www-данными. Так как quotr папка принадлежит группе приложений, и www-данные находятся в группе приложений, было бы лучше дать должностному лицу группе вместо других:

chmod g+x quotr

Как предложение стороны... Я создал несколько веб-сайтов с nginx как www-данные. То, что работало хорошо на меня, должно позволить www-данным владеть всем как пользователем и группой. Затем я добавляю своего пользователя & кому бы ни еще нужен доступ к группе www-данных.

0
ответ дан 2 December 2019 в 09:22

Другие вопросы по тегам:

Похожие вопросы: