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

Apache запрещает доступ к подкаталогам

моя цель - запретить доступ к определенным подкаталогам. моя конфигурация localhost позволяет переопределить так:

    <Directory />
            Options FollowSymLinks
            AllowOverride None
    </Directory>
    <Directory /var/www/>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride All
            Order allow,deny
            allow from all
    </Directory>

У меня также есть файл .htaccess в / var / www / с содержимым:

    <Directory /var/www/*>
            Order allow,deny
            allow from all
    </Directory>

Эти правила устанавливают доступ для всех, но мой сервер отвечает внутренней ошибкой. "cat /var/log/apache2/error.log | tail -n 10" дает:

    [Thu Feb 23 12:41:09 2012] [alert] [client 127.0.0.1] /var/www/.htaccess: <Directory not allowed here"

Почему это так ? Любые ссылки на подробные руководства по этой проблеме также очень приветствуются. Спасибо.

Причина, по которой вы получаете это сообщение об ошибке, заключается в том, что <Каталог> директива действительна только в основном Server config или Virtual Host config и недействителен в .htaccess файл.

Что касается того, как запретить доступ, вы можете очень просто установить разрешения для каталогов, чтобы ваш apache не мог их читать. Более сложные методы потребуют, чтобы вы указали нам, от чего вы пытаетесь запретить доступ.