в Apache на Ubuntu я настроил vhost, но в браузере я получаю сообщение об ошибке «403 Доступ запрещен»; в журнале написано " Клиент отклонен конфигурацией сервера: / home / remix / ".
Ища решение онлайн, я нашел много сообщений о доступе к каталогу (Разрешить от всех и т. Д.), Но, насколько я знаю, я уже сделал это. В httpd-vhosts.conf есть следующий код:
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "/opt/lampp/htdocs/"
ServerName localhost
ServerAlias localhost
ErrorLog "logs/dummy-host.example.com-error_log"
CustomLog "logs/dummy-host.example.com-access_log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot "/home/remix/"
ServerName testproject
ServerAlias testproject
<Directory "/home/remix/">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
Я также добавил
127.0.0.1 testproject
в файл / etc / hosts.
Кроме того, папка / home / remix / содержит файл index.html, а vhosts включен в httpd.conf.
Есть что-то, чего я не вижу?
Редактировать: это Apache error_log запись:
[Sat Aug 18 09:15:32.666938 2012] [authz_core:error] [pid 6587]
[client 127.0.0.1:38873] AH01630: client denied by server configuration: /home/remix/
linux
apache-2.2
ubuntu
virtualhost
Ремикс
источник
источник
Ответы:
Измените конфигурацию авторизации:
... до версии Apache 2.4 того же самого.
Просмотрите обзорный документ по обновлению для получения информации о других изменениях, которые вам, возможно, придется внести, и имейте в виду, что большинство примеров конфигурации и помощи, которые вы найдете там в Google (а также на этом сайте), относятся к 2.2.
источник
Проверьте разрешения на каталог. Могу поспорить, что он запрещает доступ кому-либо, кроме вас, например:
Если вы видите
drwx------
точно, то это так. Исправьте это, запустив:источник
Убедитесь, что пользователь, который запускает
httpd
службу, имеет доступ к этим каталогам.источник
User
параметра.«Клиент запрещен конфигурацией сервера» означает, что сам сервер Linux запрещает доступ к файлу, а не Apache.
Если предоставление доступа через изменение прав доступа / принадлежности / членства в группе не решает проблему, причиной маршрута может быть SELinux, запрещающий доступ к любой папке, которая не имеет соответствующего контекста SE Linux, как объяснено в разделе «Перемещение Apache DocumentRoot под Selinux» .
setenforce 0
файл становится доступнымsetenforce 0
делает файл снова недоступнымТогда, безусловно, SELinux запрещает доступ к файлам.
источник
Еще одна простая (но хитрая ошибка), которая может вызвать эту проблему у людей, - это когда пользовательские каталоги не находятся в / home / *, а где-то еще, например, / nethome / *
Прилагаемый userdir.conf содержит что-то вроде этого: (но с Userdir: отключен)
Спецификация Справочника предполагает ~ user == / home / user. Просто измените или добавьте спецификацию каталогов, где на самом деле находятся домашние каталоги пользователей.
Довольно очевидно, но мне потребовалось время, чтобы выяснить !! :-P ДУХ!
например, ~ user == / nethome / user
Смотрите также более открытую авторизацию в этом Справочнике в целом.
источник