Назад | Перейти на главную страницу

У вас нет разрешения на доступ / на этом сервере - изменение www по умолчанию на диск NTFS

Я уже пару дней борюсь с этой проблемой. Я пытаюсь изменить каталог www по умолчанию для веб-сервера Apache / 2.4.6 (Ubuntu) под LinuxMint16 и сделать так, чтобы он указывал на жесткий диск NTFS, который я разделяю с другой установкой Windows. Этот жесткий диск смонтирован в / media / crash / Yari, и, что бы я ни пробовал, ничего не работает .. в то время как если я изменю каталог www по умолчанию на что-то еще на том же жестком диске, где установлен Linux, все будет работать, как ожидалось.

Ниже приведены все изменения, которые я сделал, чтобы заставить все работать:

Папка, в которой мне нужен мой новый www, - / media / crash / Yari / www. Таким образом, я отредактировал файл /etc/apache2/apache2.conf:

DocumentRoot /media/crash/Yari/www
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>
<Directory /media/crash/Yari/www>
    #Options FollowSymLinks
    Options Indexes FollowSymLinks Includes ExecCGI MultiViews
    AllowOverride All
    Order allow,deny
    Allow from all
    Require all granted
</Directory>

Впоследствии, как я видел из этого сообщения https://askubuntu.com/questions/11840/how-to-chmod-on-an-ntfs-or-fat32-partition/91054#91054 Я определил UUID своего жесткого диска, набрав

sudo blkid

и отредактировал файл / etc / fstab, добавив эту строку UUID = # my-hd-uuid # / media / crash / Yari ntfs-3g auto, users, permissions 0 0

Чтобы быть уверенным, что пользователь apache (в моем случае: www-data) имел права доступа к файлам внутри нового каталога www, я изменил группу и владельца всех файлов на жестком диске с помощью

sudo chgrp -R www-data /media/crash/Yari
sudo chown -R www-data /media/crash/Yari
sudo chmod -R 775 /media/crash/Yari

Я проверил разрешения нового каталога www и содержащихся в нем файлов, выполнив

sudo ls -l /media/crash/Yari

и все файлы и каталог отображаются как drwxrwxr-x 1 www-data www-data, поэтому предыдущие изменения разрешений были выполнены правильно.

К сожалению, я наверняка чего-то упускаю, так как все вышеперечисленное было бесполезно! Надеюсь, кто-то может помочь, большое спасибо за любую помощь.

Чтобы apache мог получить доступ к каталогу, он должен иметь права доступа не только к этому каталогу, но и ко всем каталогам над ним. Итак, вам нужно разрешить доступ для чтения www-data к /media и /media/crash так же как /media/crash/Yari.

В общем, я бы рекомендовал, чтобы пользователь apache не имел доступа на запись в каталог, в котором находятся веб-страницы. Этого должно быть достаточно, чтобы разрешить запись в каталоги, используемые для журналов, файлов run / pid и любых файлов кеша. Конечно, если у вас есть, например, приложение cgi, которое записывает на диск, вы должны разрешить ему делать это, но было бы более безопасно хранить любые такие файлы в отдельном каталоге.

В любом случае, чтобы решить сиюминутную проблему, либо измените групповое владение /media и /media/crash на www-data или измените их права доступа на 755.

Немного боялся менять разрешения /media потому что у меня есть 2 других жестких диска в этом каталоге, которые я должен использовать под Windows, и последнее изменение разрешения на /media/crash/Yari сделал этот жесткий диск недоступным для записи под Windows.

Я отредактировал файл /etc/fstab изменив строку

UUID=#my-hd-uuid# /media/crash/Yari ntfs-3g auto,users,permissions 0 0

в

UUID=#my-hd-uuid# /sharedhd ntfs-3g auto,users,permissions 0 0

тогда новый default-www был бы /sharedhd/www и мне не пришлось менять разрешения /media и /media/crash.

Наконец, я хочу отметить, что изменение владельца некоторых папок с помощью

sudo chgrp -R www-data /media/crash/Yari
sudo chown -R www-data /media/crash/Yari

В моем случае это было ошибкой, потому что это повредило права собственности в Windows, сделав все файлы и папки недоступными. Единственное, что мне нужно было сделать, это изменить /etc/fstab файл и изменить разрешения с помощью

sudo chmod -R 777 /sharedhd

К сожалению, предоставив разрешения 775, я не смог редактировать те же файлы и каталоги под Windows, поэтому я был вынужден использовать 777 ... Если у этого метода есть некоторые недостатки, о которых я должен знать, или если есть лучший способ сделать это без дайте root-доступ ко всем файлам, дайте мне знать!