Я работаю в каталоге Apache www . Я должен сделать это, потому что другие люди в моей компании должны постоянно видеть мою работу - будь то доступ к обновленным версиям вещей, над которыми я работаю (в основном файлы CSS), или чтобы дать мне обратную связь (это все в локальной сети).

Я работаю с живой сборкой последней версии Ubuntu 14.04 с Apache 2.2. И система разрешений вызывает у меня головную боль. В основном это происходит из-за неожиданной несогласованности при работе с каталогом www - иногда я могу получить доступ ко всему, иногда я могу получить к ним доступ, но не могу скопировать в другие места, иногда некоторые каталоги недоступны. Я думаю, что последнее обновление представило более странные ограничения, которых раньше не было.

Я всегда так или иначе работаю над этим. Либо я sudo cp через командную строку, либо я делаю sudo nautilus либо я изменяю разрешения в течение ограниченного периода времени (apache нужны разрешения для www-data , иначе, когда вы пытаетесь получить доступ к сайту через localhost сайт получает 403 для всех его статических файлов).

Но с меня хватит, это смешно. Мне нужно, чтобы этот каталог вел себя так, как если бы я владел им, но не столкнулся с Apache.

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

заранее спасибо

1 ответ1

2

Для меня, держать каталоги в собственности root было бы хорошо. Что я предпочитаю, так это создать группу, скажем, www-editor и сделать себя (и любого другого соредактора) участником группы. chgrp папку www для www-editor и предоставить полное разрешение на группы.

По умолчанию группа www-editor должна иметь разрешение на запись в папки, а вновь создаваемые файлы должны иметь аналогичные права. Было бы удобно включить залипание для www и всех подкаталогов (т.е. sudo chmod g+s www).

Таким образом, любые созданные вами файлы будут принадлежать вам (не root поскольку sudo не требуется) и принадлежат группе www-editor . Пример ls -l в каталоге www будет выглядеть так:

drwxrwsr-x  8 root    www-editor 4096 Feb 28 00:00 .
drwxr-xr-x 14 root    root       4096 Mar 16 10:14 ..
-rw-rw-r--  1 ken_l   www-editor 1150 Feb  8  2013 favicon.ico
-rw-rw-r--  1 root    www-editor  177 Dec 25  2012 index.html
drwxrwsr-x  2 ken_l   www-editor 4096 Jun 12  2013 main

Из приведенного выше примера ken_l создал index.html и скопировал favicon.ico на www без sudo .

Разрешения для www-data должны быть минимизированы, чтобы снизить риски безопасности. Поэтому каталоги по умолчанию должны быть доступны только для чтения другим пользователям (включая www-data). Конечно, вы всегда можете точно настроить разрешения определенных каталогов по мере необходимости.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .