LINUX.ORG.RU
ФорумAdmin

AltLinux apache2 не показывает страницу http://localhost/~test/

 


0

1

altlinux 10.4 рабочая станция

# apt-get install apache2
# a2enmod userdir
# systemctl enable --now httpd2
# systemctl start httpd2

В браузере вводим http://localhost, видим ‘It works!’ Создал юзера test с HOME=/home/test, поддиректорию public_html, и в ней простейшую страничку index.html. В браузере вводим http://localhost/~test или http://localhost/~test/index.html, получаем ‘Доступ запрещен’ и в /var/log/httpd2/error_log:

[Fri Feb 13 18:14:02.713011 2026] [core:error] [pid 4543:tid 4553] (13)Permission denied: [client 127.0.0.1:52878] AH00035: access to /~test/ denied (filesystem path '/home/test') because search permissions are missing on a component of the path

Вот права на директории и файл:

drwxr-xr-x 4 root root 4096 фев 13 17:48 /home
drwxr-xr-x 9 test test 4096 фев 13 17:51 /home/test
drwxr-xr-x 2 test test 4096 фев 13 18:33 /home/test/public_html
-rw-r--r-- 1 test test 198 фев 13 17:57 /home/test/public_html/index.html

И где тут ‘search permissions are missing on a component of the path’?

Перемещено hobbit из general



Последнее исправление: vicvol90 (всего исправлений: 6)

Хотел было обругать Alt, но оказалось, что он не виноват. Apache так не работает. По умолчанию в нём HTML файлы должны находиться в /var/www/html . Чтобы брать их из другой папки, Apache надо настроить. См.докуиентацию по Apache, что там написано про mod_userdir.Но это - не первоочнредная необходимость. Сначала надо почитать рекомендации про элементарную настройку Apache. Есть на русском языке.

Partisan ★★★★★
()
Ответ на: комментарий от Sylvia

Команды aa-status нет. Ни в $PATH, ни вообще в ОС. Судя по постам в Форуме AltLinux AppArmor есть в openSUSE и поддерживается в Ubuntu, но не в AltLinux, и, как пишет Модератор, поставить его нереально. SELinux тоже нет, нет конфига /etc/selinux/config, нет команд sestatus и setenforce. Да и зачем все это в Рабочей станции?

vicvol90
() автор топика
Ответ на: комментарий от Partisan

mod_userdir.so установлен (см.выше a2enmod userdir)

LoadModule userdir_module /usr/lib64/apache2/modules/mod_userdir.so
# Settings for user home directories
#
# Required module: mod_userdir

<IfModule userdir_module>
        #
        # UserDir: The name of the directory that is appended onto a user's home
        # directory if a ~user request is received.  Note that you must also set
        # the default access control for these directories, as in the example below.
        #
        UserDir public_html
        UserDir disabled root

        #
        # Control access to UserDir directories.  The following is an example
        # for a site where these directories are restricted to read-only.
        #
        <Directory "/home/*/public_html">
                AllowOverride FileInfo AuthConfig Limit Indexes
                Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
                <Limit GET POST OPTIONS>
                        Require all granted
                </Limit>
                <LimitExcept GET POST OPTIONS>
                        Require all denied
                </LimitExcept>
        </Directory>
</IfModule>

Я имел дело с apache2 в FreeBSD, новичок я только в Linux, тем более в AltLinux.

anonymous
()

Надо чтоб директория была группа и владелец www-data . и включить модуль user_dir или как там его. Он может быть установлен но не включен. Апач от пользователя плохо работает .

jura12 ★★★
()