.htaccess & .htpasswd @ DeForum.ru
DeДверь  
Логин:  
Пароль:  
  Автологин  
   
Разместить рекламу
Письмо админу
Правила | FAQ | *Поиск | Наша команда | Регистрация | Вход
 
 
 Страница 1 из 1 [ Сообщений: 25 ] 
*   Список форумов / Начинка и техника / Программирование для WWW » ответить » создать топик « | »
Автор Сообщение
adebt Муж.
соучастник
0
Сообщения: 478
Зарегистрирован: 25.11.02
Откуда: Україна (файне місто Луцьк)
Заголовок сообщения: .htaccess & .htpasswd
Сообщение Добавлено: 18 Март 2004, 01:35:24 
Возникла трабла на ровном месте:
1) не знаю почему, но у меня не работает авторизация через .htaccess под виндой, хотя под FreeBSD все работает
2) и собственно сам вопрос:
допустим есть авторизация через .htaccess и в файле .htpasswd несколько десятков юзеров, юзер ввел логин и пароль, как теперь получить эти значения PERL скриптом и допустим сделать выборку из базы по введенному логину или в правильный каталог перенаправить ну или еще что-то сделать.
vexoid
новый человек
0
Сообщения: 295
Зарегистрирован: 15.12.02
Откуда: msk
Сообщение Добавлено: 18 Март 2004, 01:42:12 
1. содержимое .htaccess в студию
2. хранятся в env - auth_user auth_pw если не запамятовал, поправьте если ошибаюсь... а далее получил - делай что хочешь...

_________________
lost world... lost life... lost tomorrow... only night
adebt Муж.
соучастник
0
Сообщения: 478
Зарегистрирован: 25.11.02
Откуда: Україна (файне місто Луцьк)
Сообщение Добавлено: 18 Март 2004, 01:55:35 

vexoid писал(а):
1. содержимое .htaccess в студию



Код:
AuthName "Protected_Area"
AuthType basic
AuthUserFile C:\appserv\www\home\zip\www\.htpasswd
require valid-user
@TSV
постоянный участник
11
Сообщения: 4736
Зарегистрирован: 08.05.03
Сообщение Добавлено: 18 Март 2004, 08:53:36 
adebt, могут быть установлены разные алгоритмы шифрования у хостера под FreeBSD и у тебя под Windows. :glasses:
Long Муж.
SubAdmin
Теоретик
17
Сообщения: 4362
Зарегистрирован: 25.04.01
Откуда: Москва
Сообщение Добавлено: 18 Март 2004, 11:49:27 
@TSV, это очень маловероятно... скорее всего не видит самого файла помнится мне, что в конфигурационных файлах апача надо писать слеш "/" вместо "\"

_________________
Мудрость не всегда приходит с возрастом. Бывает, что возраст приходит один.
@TSV
постоянный участник
11
Сообщения: 4736
Зарегистрирован: 08.05.03
Сообщение Добавлено: 18 Март 2004, 12:47:41 
Long, ничего маловероятного. Дело в том, что алгоритм по умолчанию для Apache под Windows - MD5, а для FreeBSD это DES. Соответственно авторизация работает под Виндами, но файлы паролей несовместимыми получаются. Для паролей, сгенерированных htpasswd.exe - все работает, защищаем директорию таким .htaccess:
Код:
AuthName "Protected_Area"
AuthType Basic
AuthUserFile f:\www\scripts\testpasswd
require valid-user

testpasswd - создан из-под htpasswd.exe, юзер - tsv, пароль - tsv, в директорию кладем файл с вызовом phpinfo(). Спрашивают авторизацию, tsv/tsv отвечаем, пускают, всё честно:
Код:
PHP_SELF  /test/phpinfo.html 
PHP_AUTH_USER  tsv 
PHP_AUTH_PW  tsv 
_SERVER["AUTH_TYPE"] Basic


Если же скопировать файл паролей от хостера, то с ним - не работает. Вводишь правильные логин и пароль - не пускают. Причем файл - видно, а в логе пишут именно

Цитата:
[Thu Mar 18 12:41:18 2004] [error] [client 127.0.0.1] user tsv: authentication failure for "/test/phpinfo.html": password mismatch



Я использую для проверки аутентификации разные файлы паролей для Windows у себя на машине, и для FreeBSD у хостера, а хорошего и прямого способа добиться совместимости не нашел. :(
adebt Муж.
соучастник
0
Сообщения: 478
Зарегистрирован: 25.11.02
Откуда: Україна (файне місто Луцьк)
Сообщение Добавлено: 18 Март 2004, 13:42:26 
@TSV, проблема еще в том, что в логах нет сообзений об ошибках.

vexoid, еще вопрос о переменных, если доступ закрывается в обычный каталог, то в каком файле мне проводить проверку ENV переменных? может в shtml?
@TSV
постоянный участник
11
Сообщения: 4736
Зарегистрирован: 08.05.03
Сообщение Добавлено: 18 Март 2004, 13:47:57 
adebt, :confused: как это нету сообщений об ошибках? А что есть, т.е. вообще - что происходит? При авторизации через .htaccess проверку правильности логина и пароля сделают еще ДО выдачи страницы/передачи управления скрипту, а юзеро-зависимый контент можно просто скриптом выдавать, собственно. В чем проблема, я просто не понял вопроса, наверное. :confused:
adebt Муж.
соучастник
0
Сообщения: 478
Зарегистрирован: 25.11.02
Откуда: Україна (файне місто Луцьк)
Сообщение Добавлено: 18 Март 2004, 13:57:59 
@TSV, смотри обьясняю мое ситуацию:
1) созданы 2 файла .htaccess и .htpasswd
2) закрыт один из каталогов сайта в котором находиться допустим видео или скрипты
3) индексного файла нет, чтобы отображалось сразу содержимое директории (при наличии индексного тоже не работает)
4) набиваешь в адрессной строке http://localhost/нужный_каталог
5) сразу же пускает ничего не спрашивая
6) в error.log ничего нового не появляется

вот так, не появляется даже окно с запросом :cry:
@TSV
постоянный участник
11
Сообщения: 4736
Зарегистрирован: 08.05.03
Сообщение Добавлено: 18 Март 2004, 14:02:39 
adebt, Понял. Обработка файлов .htaccess включена для Апачи в httpd.conf?
Для локала можно так:

Цитата:
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>


Просто для Виндовой апачи по умолчанию стоит

Цитата:
AllowOverride None



Сто пудов - дело в этом. И отсутствие ошибок в логе тоже свидетельствует.
:gent:
adebt Муж.
соучастник
0
Сообщения: 478
Зарегистрирован: 25.11.02
Откуда: Україна (файне місто Луцьк)
Сообщение Добавлено: 18 Март 2004, 14:04:19 
@TSV, пойду позырю :beer:
adebt Муж.
соучастник
0
Сообщения: 478
Зарегистрирован: 25.11.02
Откуда: Україна (файне місто Луцьк)
Сообщение Добавлено: 18 Март 2004, 14:22:31 
@TSV, ты оказался прав во всем:
1) не была включена обработка файлов
2) алгоритм шифрования не подходил (через htpasswd.exe все заработало)
3) эта шняга не работает на ВИРТУАЛЬНЫХ серверах под виндой! только под *никсом
adebt Муж.
соучастник
0
Сообщения: 478
Зарегистрирован: 25.11.02
Откуда: Україна (файне місто Луцьк)
Сообщение Добавлено: 18 Март 2004, 14:23:12 
Всем :beer:
@TSV
постоянный участник
11
Сообщения: 4736
Зарегистрирован: 08.05.03
Сообщение Добавлено: 18 Март 2004, 14:31:02 
adebt, хммм... ээээ.… то есть, конечно :beer: , но на виртуальных серверах под виндой авторизация работает. Бл* буду, работает, вот те крест. :laugh: :gent:
adebt Муж.
соучастник
0
Сообщения: 478
Зарегистрирован: 25.11.02
Откуда: Україна (файне місто Луцьк)
Сообщение Добавлено: 18 Март 2004, 22:26:58 
странно


Цитата:
Password Protecting Your Website
UNIX Virtual Hosts Only


http://www.eol.ca/support/business/password/ это вот здесь написано или может я чего не понимаю, но у меня внатуре заработало только на localhost, а на виртуальных хостах нивкакую.

@TSV, у меня к тебе просьба большущая:
пожалуйста покажи кусочек кода на PERL где после авторизации через .htaccess дылалась выборка именно по введенному логину, при условии что закрывалась любая директория
@TSV
постоянный участник
11
Сообщения: 4736
Зарегистрирован: 08.05.03
Сообщение Добавлено: 18 Март 2004, 22:33:53 
adebt, а при чём здесь Perl??
- Для примера: делается виртуальный сервер (httpd.conf)
Код:
NameVirtualHost 127.0.0.2
<VirtualHost 127.0.0.2>
    DocumentRoot f:/www/_lg/
    ServerName lg.inrost
</VirtualHost>

(Ещё, конечно, нужно в файл hosts прописать
Код:
127.0.0.2       lg.inrost

Авторизация работает точно так же, как и для localhost
:confused:
А язык скриптовый тут ни при чём. Хоть PHP, хоть Perl, хоть что угодно.
adebt Муж.
соучастник
0
Сообщения: 478
Зарегистрирован: 25.11.02
Откуда: Україна (файне місто Луцьк)
Сообщение Добавлено: 19 Март 2004, 01:25:20 
@TSV, да я выразился немного не верно насчет ПЕРЛа

У меня такая вот трабла:
1) есть .htpasswd в котором находится туева хуча юзверей
2) .htaccees'ом закрыт каталог, в котором находиться еще столько же каталогов, сколько юзверей в файле с паролями
3) каждому юзверю соответсвует определенный каталог

Задача: после введения юзверем логина и пароля определить в какой каталог его перенаправлять (соответствие каталогов логинам хранится например в МуСкуле) :confused:
@TSV
постоянный участник
11
Сообщения: 4736
Зарегистрирован: 08.05.03
Сообщение Добавлено: 19 Март 2004, 08:29:16 
adebt,
1. Определить пользователя (vasya), логин и пароль будут в переменных среды
2. Определить его каталог, используя базу (vasya_pupkin)
3. Отправить HTTP-заголовок Location: http://www.mysite.ru/users/vasya_pupkin

… или еще раз объясняй, что сделать нужно. ;)
adebt Муж.
соучастник
0
Сообщения: 478
Зарегистрирован: 25.11.02
Откуда: Україна (файне місто Луцьк)
Сообщение Добавлено: 19 Март 2004, 09:01:58 
@TSV,
пожалуйста покажи кусок кода, а то я это я себе ОЧЕНЬ смутно представляю.
Если можна то на ПЕРЛе :lamer:
@TSV
постоянный участник
11
Сообщения: 4736
Зарегистрирован: 08.05.03
Сообщение Добавлено: 19 Март 2004, 09:14:30 
adebt, ну ломаки мне писать кусок кода на языке, которого я не знаю. По справочникам шариться замучаешься. :laugh: В чем проблема взять из ENV логин, определить по нему директорию, и отправить HTTP-header, чтобы сделать переход на другую страницу? :gent:
adebt Муж.
соучастник
0
Сообщения: 478
Зарегистрирован: 25.11.02
Откуда: Україна (файне місто Луцьк)
Сообщение Добавлено: 19 Март 2004, 23:30:57 
@TSV, спасибо огромное за терпение. Я разобрался методом научного тыка. Просто меня ввели в заблуждение переменные, которые мне указал vexoid. Щас все пучком :beer:
vexoid
новый человек
0
Сообщения: 295
Зарегистрирован: 15.12.02
Откуда: msk
Сообщение Добавлено: 21 Март 2004, 00:17:54 
эм .) чем это они не устроили ? разве что не успел оперативно ответить на твой вопрос... .)

_________________
lost world... lost life... lost tomorrow... only night
adebt Муж.
соучастник
0
Сообщения: 478
Зарегистрирован: 25.11.02
Откуда: Україна (файне місто Луцьк)
Сообщение Добавлено: 21 Март 2004, 12:37:51 
vexoid, пробовал обращаться к этим переменным после авторизации - глухо как в танке. А переменная REMOTE_USER выдает то что надо. В ПхП использовал вот такую беду
Код:
<?php

echo $_SERVER['PHP_AUTH_USER'];

?>


Я ПхП не рублю совсем, это чужая подсказка.
vexoid
новый человек
0
Сообщения: 295
Зарегистрирован: 15.12.02
Откуда: msk
Сообщение Добавлено: 22 Март 2004, 20:00:44 
а ну понятно - опять же - давно не страдал подобным .)
собственно почему и не категорично утверждал а допускал ошибку .)

_________________
lost world... lost life... lost tomorrow... only night
adebt Муж.
соучастник
0
Сообщения: 478
Зарегистрирован: 25.11.02
Откуда: Україна (файне місто Луцьк)
Сообщение Добавлено: 22 Март 2004, 21:28:35 
vexoid, :beer: все чики
*   Список форумов / Начинка и техника / Программирование для WWW « | » » ответить » создать топик
 Страница 1 из 1 [ Сообщений: 25 ] 
Показать сообщения за:   Поле сортировки  
Найти:
Перейти:  
Уровень доступа: Вы не можете начинать темы. Вы не можете отвечать на сообщения. Вы не можете редактировать свои сообщения. Вы не можете удалять свои сообщения. Вы не можете добавлять вложения.
cron


ООО ДеФорум
При использовании материалов сайта ссылка на DeForum.ru — обязательна.
Проект Павла Батурина ©2001-2077; // Powered by phpBB © 2013 phpBB Group
Rambler's Top100