PDA

Показать полную графическую версию : Не понятно с файлом .htaccess


starav
19-11-2004, 09:56
Содержание файла такое:

order deny, allow
AuthType Basic
AuthUserFile /.htpasswd
AuthName "Введите пароль"
Deny from all
require valid-user

При обращении к папке Apache даже ничего не спрашивает.

Еще слышал про модуль какой-то: mod_rewrite.
Если его нет в http.conf, работа с .htaccess будет невозможна?
И если что, то как его установить?

archy
19-11-2004, 10:31
Что apache пишет в логи? Путь к файлу .htpasswd нужно указывать полный и он должен быть доступен для чтения пользователю от которого запущен httpd

starav
19-11-2004, 14:30
Вот что пишет в файле access_log:

192.168.0.1 - - [19/Nov/2004:17:09:58 +0500] "GET /temp/nuke/modules.php?name=Web_Links&l_op=visit&lid=2 HTTP/1.1" 302 -
192.168.0.1 - - [19/Nov/2004:17:09:58 +0500] "GET /test/TestMaker/ HTTP/1.1" 200 277
192.168.0.1 - - [19/Nov/2004:17:09:58 +0500] "GET /test/TestMaker/main.php HTTP/1.1" 200 753
192.168.0.1 - - [19/Nov/2004:17:09:58 +0500] "GET /test/TestMaker/left.php HTTP/1.1" 200 1011



Путь тоже правильно прописан, права доступа для для меня и группы чтение и запись, для всех остальных - чтение (664).

У меня такое впечатление, что apache'у накакать на .htaccess.

mar
19-11-2004, 20:50
У меня такое впечатление, что apache'у накакать на .htaccess.
запросто - если в httpd.conf не стоит для соответствующих directory дирректива AllowOverride All
Скажу больше - в 4-ой ветке FreeBSD она (по дефолту) стоит в None

archy
19-11-2004, 22:45
starav
Смотреть надо и error_log тоже :)
Правда .htpasswd лежит в корне?

starav
20-11-2004, 09:13
archy
Да в корне. Сервер-то локальный. Пробовал даже перемещать. Не помогает.
mar
Что, для каждой папки, в которой должен лежать .htaccess нужно это прописывать?

mar
20-11-2004, 11:42
starav
нет, я же написала - глобально для дерева каталогов сайта через определения внутри Ditectory, например:
<Directory />
Options FollowSymLinks
#AllowOverride None # так по-умолчанию
AllowOverride All #а так мы разрешаем переопределять ВСЕ через .htaccess
</Directory>

Вообще посмотрите внимательно httpd.conf - в нем все объясняется

starav
20-11-2004, 16:23
Классно. Все заработало. Но получился прикол. Убрал я тут (когда эксперементировал) .htaccess и переместил его в корень. Два часа мучался, почему нет доступа ни к одной папке? Весь апач перелопатил. А проблема-то была...

starav
21-11-2004, 08:15
А возможно ли ведение логов именно по доступу к папке, в кторой .htaccess. Отдельным файлом?

mar
24-11-2004, 00:41
нет, насколько мне помнится, можно заставить апач вести разные логи для разных виртуальнгых хостов, но не для отдельных каталогов. Хотя никто не мешает написать небольшой скрипт, котрый будет парсить общий лог, вытасвкивая из него данные про нужный каталог.




© OSzone.net 2001-2012