Ах, вы видели ваш комментарий об изменении их на 777
, но все еще удивляетесь, почему это не работает.Мое решение ниже может не помочь вам.
РЕДАКТИРОВАТЬ:
Если у вас есть доступ к /etc/apache2/httpd.conf
,
отредактируйте его с помощью sudo vi /etc/apache2/httpd.conf
.
Затем измените эти 1 из этихстроки или обе из них
User _www
Group _www
Вот пример моего списка каталогов.
ace:remote-app ace (git::master)$ ls -al
total 72
drwxr-xr-x 24 ace staff 816 7 Aug 00:24 .
drwxr-xr-x 11 ace staff 374 4 Aug 13:46 ..
drwxr-xr-x 3 ace staff 102 12 Jul 17:06 .bundle
drwxr-xr-x 14 ace staff 476 7 Aug 02:29 .git
-rw-r--r-- 1 ace staff 100 1 Aug 19:20 .gitignore
-rw-r--r-- 1 ace staff 9 1 Aug 19:20 .rspec
drwxrwxr-x 10 ace staff 340 14 Jul 15:58 public
Теперь мой публичный каталог имеет разрешения 775
, что означает owner
и group
иметь полные права, в то время как другие пользователи могут только читать и выполнять.
Это зависит от того, хотите ли вы, чтобы пользователь apache стал ace
по умолчанию _www
или группа apache стала staff
по умолчанию _www
.
После того, как вы решили, что изменить, перезапустите apache.
/usr/sbin/apachectl graceful
И теперь ваша страница должна иметь доступ к каталогам / файлам.
Следует отметить, что вынеобходимо изменить владельца для файлов, которые уже были записаны на вашей веб-странице, поскольку они имеют _www:_www
право собственности, и после перезапуска у вас не будет доступа к ним.
Вы можете изменить их новое владение с помощью этого -R
сделать его рекурсивным.
sudo chown -R newapacheuser:newapachegroup <path>