NAME
CGI::Builder::GetPageName - GetPageName from path info.
DESCRIPTION
This extention allow you to set page name from $ENV{PATH_INFO} instead of p(Qerystring). You can check SYNOPSYS out and you will know what this mean. :-)
This class is extention of CGI::Builder, I love CGI::Builder.
SYNOPSYS
start.cgi
#!/usr/bin/perl -w
use strict;
use Your::CGI::Builder;
my $app = Your::CGI::Builder->new();
$app->process();
# you can set page name this way if you want but in this way
# you do not need to use this extention :-p
#$app->process( 'page_name' );
__END__
Your CGI::Builder Package.
package Your::CGI::Builder;
use CGI::Builder qw/
CGI::Builder::GetPageName
/;
sub PH_foo_bar {
my $s = shift;
$s->page_content( 'my URL is http://localhost/script.cgi/foo/bar/?foo=whatever !!!!' );
}
sub PH_hoge {
my $s = shift;
$s->page_content = 'my URL is http://localhost/script.cgi/hoge/ !!!' ;
}
MORE FUN?
Use ScriptAlias !!! This allow you to hide .cgi extension. Very fun.
ScriptAlias /secure /var/www/httpdoc/secure.cgi
# You have this start script.
http://localhost/secure.cgi
# You set script alias so , you can also access with this URL.
http://localhost/secure
# Then now...
sub PH_foo_bar {
my $s = shift;
$s->page_content = 'my URL is http://localhost/secure/foo/bar/?foo=whatever !!!' ;
}
OVERRIDE MODULES
get_page_name
I override this method but I guess you do not need to care.
SEE ALSO
CGI::Builder
CREDITS
Thanks to Domizio Demichelis for everything!
AUTHOR
Tomohiro Teranishi <tomohiro.teranishi+cpan@gmail.com>
COPYRIGHT
This program is distributed under the Artistic License