#!/usr/bin/perl -w use strict; use CGI; use CGI::Carp ('fatalsToBrowser'); use CGI::Session; use CGI::Session::Auth::DBI; use CGI::Carp; use DBI; use Data::Dumper; # CGI object for headers, cookies, etc. my $cgi = new CGI; my $dbh = DBI->connect("DBI:PgPP:dbname=db","username","password"); my $session = new CGI::Session("driver:PostgreSQL", undef, {Handle=>$dbh}); my $auth = new CGI::Session::Auth::DBI({ CGI => $cgi, Session => $session, DBHandle => $dbh, UserTable => 'users' }); print "Error\n" if ( not defined $auth ); $auth->authenticate(); # check if visitor has already logged in if ($auth->loggedIn) { &showSecretPage; } else { &showLoginPage; } sub showLoginPage { print $cgi->redirect('https://192.168.0.1/login.html'); } sub showSecretPage { print $session->header; print qq~\n~; }