Xampp & Apache: псевдоним «доступ запрещен» - PullRequest
1 голос
/ 24 апреля 2011

Я только что установил Xampp в моей системе Arch Linux.Что я хочу сделать сейчас:

Мой рабочий каталог PHP находится в моей домашней папке (по адресу / home / luke / PHP ).Я хочу, чтобы Apache получил доступ к этим файлам два, поэтому я следовал Руководству по установке Xampp на Arch Linux Wiki и создал псевдоним для этого каталога.Вот как выглядит мой httpd.conf (часть Alias):

Alias /PHP /home/luke/PHP
<directory /home/luke/PHP>
    AllowOverride FileInfo Limit Options Indexes
    Order allow,deny
    Allow from all
</directory>

После этого я изменил разрешения для папки home / luke / PHP на 777 (используяCHMOD).Я перезапустил Xampp и получил 403, когда попытался перейти на http://localhost/PHP

. Apache-сервер работает под пользователем http (который существует) и http -Group.Итак, я добавил пользователя http в свою группу (группу luke от моего пользователя, используя инструмент chown-tool).Я перезапустил Сервер, та же ошибка.

Вот (часть из) файл error_log:

[Sun Apr 24 18:05:37 2011] [error] [client 127.0.0.1] (13)Keine Berechtigung: access to /PHP/ denied
[Sun Apr 24 18:10:30 2011] [error] [client 127.0.0.1] (13)Keine Berechtigung: access to /PHP/ denied
[Sun Apr 24 18:10:30 2011] [error] [client 127.0.0.1] (13)Keine Berechtigung: access to /PHP/ denied

Итак, созданный мной Псевдоним должен работать, но что мне нужносделать, чтобы моя папка / home / luke / PHP была доступна для сервера Apache?

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

Ответы [ 2 ]

2 голосов
/ 24 апреля 2011

Apache должен уметь:

  • Чтение из каталога / home / luke / PHP - вы уже допустили это, по-видимому
  • Просматривать каталоги, являющиеся родителямиэтот каталог.


Как правило, вам нужно дать разрешение на выполнение другим (что означает, что они смогут пройти по этому каталогу и перейти к его дочерним элементам), в вашем домашнем каталоге:

chmod o+x /home/luke


Конечно (особенно в многопользовательской среде) , вам нужно будет убедиться, что другие пользователине может получить доступ к другим вашим каталогам и файлам - обычно удаляя все привилегии, которые group и other могут иметь для каталогов / файлов в вашем домашнем каталоге.

0 голосов
/ 13 мая 2011

Я исправил свою проблему, настроив псевдоним, как показано выше, но установив пользователя Apache для моего пользователя ("luke") и оставив группу вне:

# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
# running httpd, as with most system services.
User luke
#Group http

После этого я сменил владельцаhtdocs - и PHP -Каталог моего пользователя (luke) и перезапущенный LAMPP.

Теперь все работает нормально.Также спасибо Паскалю МАРТИНУ и hornetbzz!

...