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

ограничение пароля и ip в htaccess

Я учусь использовать htaccess.

  1. Сначала я хочу попробовать, как настроить имя пользователя и пароль для следующего каталога ~/public_html/55/m:

    ~/public_html/55/m$ ls -la
    total 24
    drwxr-xr-x 2 tim Domain^Users 4096 2011-12-16 21:39 .
    drwxr-xr-x 3 tim Domain^Users 4096 2011-12-16 21:42 ..
    -rwxr-xr-x 1 tim Domain^Users  271 2011-12-16 21:26 .htaccess
    -rwxr-xr-x 1 tim Domain^Users    8 2011-12-16 21:39 .htpasswd
    -rwxr-xr-x 1 tim Domain^Users  884 2011-12-16 20:02 index.html 
    

    Я вручную создал два текстовых файла: .htaccess и .htpasswd. Их содержание

    ~/public_html/55/m$ cat .htaccess
    AuthUserFile /home/WIN/local/WIN/tim/public_html/55/m/.htpasswd
    AuthGroupFile /dev/null
    AuthName EnterPassword
    AuthType Basic
    
    Require valid-user
    
    ~/public_html/55/m$ cat .htpasswd
    tim:123
    

    Но я могу получить доступ к веб-странице без запроса имени пользователя и пароля. Интересно, почему?

  2. Во-вторых, я хочу попробовать, как ограничить диапазон ip для доступа ~/public_html/55/n

    ~/public_html/55/n$ ls -la
    total 16
    drwxr-xr-x 2 tim Domain^Users 4096 2011-12-16 21:54 .
    drwxr-xr-x 4 tim Domain^Users 4096 2011-12-16 21:53 ..
    -rwxr-xr-x 1 tim Domain^Users  292 2011-12-16 21:53 .htaccess
    -rwxr-xr-x 1 tim Domain^Users  884 2011-12-16 21:53 index.html
    

    где я создал вручную текстовый файл .htaccess содержание которого:

    ~/public_html/55/n$ cat .htaccess 
    AuthUserFile /dev/null
    AuthGroupFile /dev/null
    AuthName AllowFromBlah
    AuthType Basic
    
    <limit GET>
    order  deny,allow
    deny from all
    allow from xxx.edu
    </Limit>
    

    Но я могу получить доступ к веб-странице из-за пределов указанного диапазона IP xxx.edu. Интересно, почему?

Спасибо и привет!

Возможно, файлы .htaccess для этих каталогов просто игнорируются с использованием AllowOverride директива в конфигурации виртуального хоста. Из http://httpd.apache.org/docs/2.2/mod/core.html#allowoverride:

Если для этой директивы установлено значение None, файлы .htaccess полностью игнорируются. В этом случае сервер даже не будет пытаться читать файлы .htaccess в файловой системе.

РЕДАКТИРОВАТЬ: Конфигурация Ubuntu основана на /etc/apache2, другие системы имеют свою конфигурацию, основанную на /etc/httpd или другой каталог. Конфигурация Ubuntu для домашних каталогов пользователей обрабатывается mods-available/userdir.conf который активируется при подключении к /etc/apache2/mods-enabled. Он определяет домашние каталоги как /home/*/public_html. В php4.conf также ссылается на те же каталоги.