Forum Webscript.Ru
Программирование => Perl => Тема начата: qwertyk от 28 Мая 2003, 14:09:43
-
Ребят, помогите пожалуйста, я никогда не делал запароленных областей, поэтому даже не представляю с чего начать.
Вот чего хотелось бы: на сервере есть закрытая и открытая область, в открытой можно смотреть все страницы, а закрытая - только для зарегистрировавшихся. Как мне сделать, чтобы на странице 1 ввести логин и пароль, и попасть в закрытую область.
Я программу-то саму представляю как написать. Она просто сравнивать слова должна и если совпадут - то пересылать, так? Я вот только не представляю как запаролить директорию и привязать ее к программе. И чтоб сделать так, чтобы в закрытую область например вот так попасть нельзя было набив адресной строке: http://www.server.ru/zakritayaoblast/fail.html
Сервер - Апаче.
Вот. Поиском по форуму пользовался ничего не нашел. В книгах тоже нет. Помогите пожалуйста или на мысль натолкните...
-
http://195.64.255.164/story/news.php?artc=6
-
Спасибо. Сейчас почитаю...
-
А чего делать, если мне windows не позволяет создать .htaccess - пишет введите имя файла.
Версия Apache 1.3.26 под виндовс.
-
Все. Создал. Простите за беспокойство.
-
NeoNox, я сделал все по статье включая пункт 5.
Создал закрытую область, положил туда .htpasswd и .htaccess
Запускаю Апач, пишу http://localhost/zakrobl/1.html
А он мне выдает Internal Server Error 500 вместо окна с логином и паролем...
-
Что в логах Apache?
-
access.log:
127.0.0.1 - - [29/May/2003:19:13:51 +0400] "GET /zakrobl HTTP/1.1" 500 613
127.0.0.1 - - [29/May/2003:19:13:56 +0400] "GET /zakrobl/2.html HTTP/1.1" 500 613
error.log:
[Thu May 29 19:13:51 2003] [alert] [client 127.0.0.1] c:/apache/apache/htdocs/zakrobl/.htaccess: AuthName takes one argument, The authentication realm (e.g. "Members Only")
[Thu May 29 19:13:56 2003] [alert] [client 127.0.0.1] c:/apache/apache/htdocs/zakrobl/.htaccess: AuthName takes one argument, The authentication realm (e.g. "Members Only")
-
Что в строке AuthName в твоем .htaccess?
-
Я htpasswd.exe утилитой создал которая к апачу прилагается. Потом открыл, проверить, посмотрел - логин и закриптованный пароль через двоеточие.
Далее структура апача моего:
bin
cgi-bin
conf
htdocs
и.т.д
в htdocs лежит папка manual (руководства к апачу вроде) и куча каких-то файлов апачевских. Я сюда еще index.html положил и папку zakrobl. В папку zakrobl я положил .htaccess, несколько файлов и .htpasswd. .htpasswd я положил туда, чтобы не сперли, т.к. запароленная директория же...
Содержание .htaccess:
AuthUserFile /htdocs/zakrobl/.htpasswd
AuthGroupFile /dev/null
AuthName Protected Area
AuthType Basic
require valid-user
попробовал переложить .htpasswd в /bin
AuthUserFile /bin/.htpasswd
Все-равно не работает и окон для ввода пароля не выбрасывает...
-
Поставь AuthName "Protected Area"
-
Бааааааааальшое человеческое спасибо :) заработало....
-
А почему он пароль опознавать не хочет?
access.log:
127.0.0.1 - gena [30/May/2003:17:46:39 +0400] "GET /zakrobl HTTP/1.1" 401 481
127.0.0.1 - gena [30/May/2003:17:46:44 +0400] "GET /zakrobl HTTP/1.1" 401 481
127.0.0.1 - gena [30/May/2003:17:46:49 +0400] "GET /zakrobl HTTP/1.1" 401 481
127.0.0.1 - gena [30/May/2003:17:46:53 +0400] "GET /zakrobl HTTP/1.1" 401 481
error.log:
[Fri May 30 17:44:10 2003] [error] [client 127.0.0.1] user gena not found: /zakrobl
[Fri May 30 17:44:25 2003] [error] [client 127.0.0.1] (2)No such file or directory: Could not open password file: /.htpasswd
[Fri May 30 17:44:25 2003] [error] [client 127.0.0.1] user gena not found: /zakrobl
[Fri May 30 17:44:31 2003] [error] [client 127.0.0.1] (2)No such file or directory: Could not open password file: /.htpasswd
.htpasswd - я создал по всем правилам. Положил в корневую директорию.
htpasswd -c c:\\apache\\apache\\.htpasswd gena
Ввел пароль.
Повторил.
AuthUserFile /.htpasswd
AuthGroupFile /dev/null
AuthName "Protected Area"
AuthType Basic
require valid-user
Запустил апаче, http://localhost/zakrobl - набил.
Выскочило окно ввести логин пароль. Ввожу логин: gena
Ввожу пароль. А он игнорирует, и после третьего окна на страницу с ошибкой Authorization Required
This server could not verify that you are authorized to access the document requested. Either you supplied the wrong credentials (e.g., bad password), or your browser doesn\'t understand how to supply the credentials required.
Почему не работает?
-
No such file or directory: Could not open password file: /.htpasswd
Что это за путь у тебя AuthUserFile /.htpasswd ???
-
Я поправил на AuthUserFile .htpasswd
(объясни пожалуйста, почему /перед папкой ставится относительно корня, а перед файлом нет - /htdocs/1.html верно, а /.htaccess - нет?)
-
а ладно, сам понял.