Как в mod_perl сделать http-аутентификацию.
Хочется не через htpasswd, а через кусок перлового скрипта, который сам
уже будет решать, authenticate или нет. В php3 это было сделать очень
просто (даже в примерах валялось). А с perl'ом - замучался уже.
Насколько я понимаю, копать надо в сторону perldoc Apache...
Но там бред всякий. Apache->request, вроде, работает. Но если я делаю
$q=Apache->request;
$q->header_out("WWW-Authenticate" => "Basic");
- никакого Authenticate не происходит.
Если делаю.
$q=Apache->request;
$q->note_basic_auth_failure;
- получаю в error_log:
[Fri Nov 6 20:13:00 1998] [notice] httpd: child pid 11987 exit signal
Segmentation fault (11), possible coredump in /home/yuri/perl-www/apache
Лезть в сорцы Апача сейчас ну уж совсем нет времени...
[2:20:13] yuri@cs:apache$ gdb ./httpd_modperl core
GDB is free software and you are welcome to distribute copies of it
under certain conditions; type "show copying" to see the conditions.
There is absolutely no warranty for GDB; type "show warranty" for details.
GDB 4.16 (i386-redhat-linux), Copyright 1996 Free Software Foundation,
Inc...
Core was generated by `/home/yuri/perl-www/apache/httpd_modperl -d
/home/yuri/perl-www/apache/ -f /hom'.
Program terminated with signal 11, Segmentation fault.
find_solib: Can't read pathname for load map: Input/output error
#0 0x40064ce4 in ?? () from /lib/libc.so.6
#0 0x40064ce4 in ?? () from /lib/libc.so.6
#1 0x816648c in ?? ()
#2 0x80a7b9c in ap_note_basic_auth_failure ()
#3 0x806cbd1 in XS_Apache_note_basic_auth_failure ()
#4 0x80e8d0f in Perl_pp_entersub ()
#5 0x80e51ca in Perl_runops ()
#6 0x80bf22f in perl_call_sv ()
#7 0x806135b in perl_call_handler ()
#8 0x8060bcb in perl_run_stacked_handlers ()
#9 0x805f46e in perl_handler ()
#10 0x809a63f in ap_invoke_handler ()
#11 0x80ac7ed in process_request_internal ()
#12 0x80acbe0 in ap_internal_redirect ()
#13 0x808fce5 in handle_dir ()
#14 0x809a63f in ap_invoke_handler ()
#15 0x80ac7ed in process_request_internal ()
#16 0x80ac84c in ap_process_request ()
#17 0x80a4bbd in child_main ()
#18 0x80a4df8 in make_child ()
#19 0x80a4eab in startup_children ()
#20 0x80a54a0 in standalone_main ()
#21 0x80a5c73 in main ()
ПОМОГИТЕ, pls!
// Yuri Kuzmenko
// IAC "Liga", system administrator (http://www.liga.kiev.ua).
=============================================================================
= Apache-Talk@lists.lexa.ru mailing list =
Mail "unsubscribe apache-talk" to majordomo@lists.lexa.ru if you want to quit.
= Archive avaliable at http://www.lexa.ru/apache-talk =