Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Re^6: RFC: Proposed tutorial - simple login script using CGI::Application

by Corion (Patriarch)
on Jan 21, 2016 at 15:53 UTC ( [id://1153288]=note: print w/replies, xml ) Need Help??


in reply to Re^5: RFC: Proposed tutorial - simple login script using CGI::Application
in thread RFC: Proposed tutorial - simple login script using CGI::Application

Please show the relevant code where you do the redirect, where you expect the redirect to go, and where the browser ends up.

  • Comment on Re^6: RFC: Proposed tutorial - simple login script using CGI::Application

Replies are listed 'Best First'.
Re^7: RFC: Proposed tutorial - simple login script using CGI::Application
by Anonymous Monk on Jan 21, 2016 at 16:07 UTC
    Hi,
    STORE => 'Session', #LOGOUT_RUNMODE => 'logout', #LOGIN_RUNMODE => 'login', POST_LOGIN_RUNMODE => 'okay', POST_LOGIN_URL =>'http://localhost/cgi-bin/WebApp/vpage.cgi', RENDER_LOGIN => \&my_login_form,
    In the browser trying login page URL "http://localhost/cgi-bin/WebApp/simple.pl" after successful login the page getting redirect to new URL http://localhost/cgi-bin/WebApp/vpage.cgi, the problem is anyone can try directly access to "http://localhost/cgi-bin/WebApp/vpage.cgi" it will show the page without login.

    Trying to hide the page http://localhost/cgi-bin/WebApp/vpage.cgi, users

    Many Thanks...

      It's important that all your pages be CGI::Application 'runmodes', and if you think about it in object-oriented programming terms, all of your runmodes should be methods of objects derived from some abstract base class that is itself derived from CGI::Application. Your base class contains the login logic. That way all derived classes inherit that functionality. If you redirect to some random CGI script that isn't derived from that base class, then you're right - you just bypassed your login logic. Fortunately, all you probably need to do is add:
      use base 'MyLib::Login';
      to your vpage.cgi script.
        Thank you! Let me try this...

      How is this Perl code I could run?

        vpage.cgi - perl code
        #!/usr/bin/perl use strict; #use warnings; use Encode qw( decode_utf8 ); use CGI; my $q= new CGI; use CGI::Carp qw(warningsToBrowser fatalsToBrowser); print $q->header( "text/html" ); print "Testing another page";

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1153288]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others romping around the Monastery: (8)
As of 2024-04-24 17:15 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found