Как предоставить разрешения для Git и Apache для / var / www - PullRequest
0 голосов
/ 03 февраля 2019

Я пытаюсь установить wp-deploy.После трехкратной переустановки Mint и почти сожжения моего дома своей яростью я не могу на всю жизнь понять, как я должен дать /var/www правильные разрешения.

Я получаю отказано в разрешении, если gitпопытки написать, что будет происходить не часто с capistrano / wp-deploy.

Но если я chown каталог, который я нарушаю apache.

drwxrwxr-x 2 www-data www - это текущие разрешения, где www это группа.В каком-то учебном пособии мне предлагалось сделать так, чтобы в нем содержались пользователь www-данных и другой пользователь, но, похоже, это не изменило поведение.У меня также было это в www-data:root и www-data:www-data все с тем же поведением.

ОБНОВЛЕНИЕ: Все еще беспорядок, обновленный и затем понял некоторые ошибки.Я, вероятно, скоро вернусь с дополнительной информацией.Спасибо за помощь.

Ответы [ 2 ]

0 голосов
/ 03 февраля 2019

Вы хотите разделить разрешения.Обычно плохая идея предоставить Apache доступ для записи в каталоги, если это не требуется специально (и недоступно из Интернета).

chown файлы для пользователя git и группы chgrp для www (должно быть уже так) Убедитесь, что пользователь www-data является членом www группы groups www-data, если не добавить его usermod -g www www-data и перезапустите службу apache.

Установите разрешения для/var/www и все директории под ним до "755".В результате drwxr-xr-x.

Установите разрешения file для «644» для всех файлов в /var/www и его подкаталогах.В результате -rw-r--r--.

find /var/www -f -exec chmod 644 {} \;
0 голосов
/ 03 февраля 2019

В каком-то учебном пособии было сказано, что он содержит пользователя www-data и другого пользователя, но, похоже, он не меняет поведения.

Это обычный способ сделать это:Если доступ к каталогу требуется более чем одному пользователю, он создает группу, дает этой группе право собственности на каталог и устанавливает разрешение для этой группы.После этого все пользователи, которым требуется доступ к каталогу, добавляются в группу. Однако обратите внимание, что изменения в членстве в группе обычно вступают в силу только после следующего входа пользователя в систему. То есть, если пользователь все еще вошел в систему, будучи добавленным в группу, пользователь не заметит изменения до следующегоlogin.

Учитывая, что группа www уже существует, вам просто нужно проверить правильность прав доступа и затем добавить пользователя Git (давайте назовем его gituser) в группу www с помощью usermod :

sudo usermod -a -G www gituser

Флаг -a добавляет данную группу к существующему списку групп пользователя.-G принимает разделенный запятыми список групп, в которые должен входить пользователь.

...