| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Perl: разработка для Web > авторизация на сайте |
| Автор: rcdimon 9.9.2004, 15:55 |
| Здравствуйте уважаемые кодеры! Я пишу сайт на CGI. И хочу сделать авторизацию. Что бы можно было зарегиться а потом при входе вводить и входить в основную часть, а после этого можно было бы уже без проблем ходить по всему сайту. Можно конечно скинуть юзеру на комп куку, но у многих они не работают, сайт расчитан на ламаков, поэтому надпись типа "Включите куки файлы" им не о чем не скажет. Как тогда определять вводил ли этот юзер уже пароль или нет? |
| Автор: GoodBoy 9.9.2004, 16:13 |
| проще всего использовать апачевскую авторизацию через .htaccess |
| Автор: HalkaR 9.9.2004, 18:04 |
| GoodBoy, не сказал бы что проще, не везде дадут такую возможность. |
| Автор: korob2001 9.9.2004, 18:34 |
| Помоему, тебе нужны сессии. |
| Автор: GoodBoy 10.9.2004, 09:54 |
| HalkaR Практически все хостинги разрешают использование .htaccess. Платные - вообще все!!! Да и зачем изобретать велосипед, если есть возможность воспользоваться хорошим отлаженным механизмом?? :-)))) |
| Автор: HalkaR 10.9.2004, 14:03 |
| GoodBoy всежки не везде, проще реализовать сессии. |
| Автор: GoodBoy 10.9.2004, 15:00 | ||
А надежнее ли??? |
| Автор: HalkaR 10.9.2004, 15:21 | ||||
Надежность в простоте Вобщем, rcdimon, уточните есть ли у вас доступ до .htaccess и базы данных? |
| Автор: rcdimon 11.9.2004, 08:30 |
| Спасиба за то что проявили интерес к моей теме. У меня платный хостинг и есть базы данных и даже не одна. А на счет .htaccess не знаю. Но я не умею работать с базами данных. |
| Автор: Secandr 11.9.2004, 10:53 |
| rcdimon День, два и БД станут родными. |
| Автор: rcdimon 11.9.2004, 16:23 |
| Очень надеюсь. Ведь у меня уже немаленький опыт в программировании. И не только на ПЕРЛ. То есть на перл его почти нет |
| Автор: Secandr 11.9.2004, 16:50 |
| В разделе БД на форуме есть хорошие примеры и статья пегаса. |
| Автор: GoodBoy 13.9.2004, 10:13 |
| rcdimon Раз хостинг платный, то 100% разрешены .htaccess!!! |
| Автор: rcdimon 14.9.2004, 15:55 |
| Я често скажу, что не знаю что эти файлы могут делать. По моему что то типа запрещать доступ к паролированным директрориям на сервере. Но я видимо не совсем точно сказал что мне нужно. Я знаю где и как будут храниться пароли, меня интересует другое. Допустим пользователь зашел на сайт, ввел пароль и вошел в систему. Но когда он перейдет на другую страницу по ссылке или откроет этот же сайт паралельно в другом окне то как я узнаю что это он же.? Может можно как то записывать логин и пароль в текст HTML документа, который бы смотрел пользователь, но тогда его необходимо шифровать, что бы никто не вошел бы так просто, сохранив эту страница на комп и изменив соответсвующие записи и ссылки на глобальные. Но как тогда принимать эти данные? В общем ничего не понятно. Хотя можно записывать пользователю только логин, а при входе в систему на сервере создавался бы файл в котором записано, какие логины сейчас в OnLine. Но так можно и с другова компа зайти паралельно с тем юзером. Хотя хранить пароль в тексте, отправляемому пользователю не так уж и опасно, ведь что бы его подобрать это нужно его действительно переберать. А это можно сделать и на странице входа в систему. Конечно было бы проще пихать пользователю куку и призагрузке странице считывать ее, но ведб они не у всех работают, а обьяснять как их включать ламакам- посетителям сайта, это себе дороже. |
| Автор: GoodBoy 14.9.2004, 16:25 |
| Если юзер авторизовался на сайте через .htaccess, то на какую страницу этого сайта он бы не переходил ты везде сможешь через $ENV{REMOTE_USER} узнать его логин. |
| Автор: Guest 17.9.2004, 13:39 |
| Спасибо, но как тогда их авторизировать через этот htaccess? И что это такое вообще? |
| Автор: GoodBoy 17.9.2004, 14:06 | ||||
Файл .htaccess должен лежать в том каталоге, который нужно запаролить! Содержимое его в общем случае такое:
где: AuthName - текст, который будет выведен на панели ввода логина/пароля AuthType - тип авторизации AuthUserFile - полный физический путь к файлу с паролями require - требуемый пользователь (в данном случае любой пользователь, который введет правильный логин и пароль) файл .htpasswd выглядит так:
зашифрованный пароль можно получить из обычного Перловой фeнкцией crypt: my $crypt_pass = crypt('пароль', 'ключ');, где ключ - ДВА произвольных символа (лучше из латинского алфавита) |