我想知道如何调试不输出任何cgi
的{{1}}脚本。
我目前有一个带有HTML
表单的登录页面,在提交时会重定向到另一个html
脚本。该脚本应该检查用户是否输入了正确的信息。
此脚本不打印任何cgi
,因此我不确定我应该如何检查它。当我对此脚本进行重定向时,我当前正在收到html
。
Internal Server Error
州:
error.log
有人可以告诉我一种可以调试此脚本的方法吗?
感谢您的帮助。
End of script output before headers:
main.cgi
#!/usr/bin/perl -w
use CGI qw/:all/;
use CGI::Carp qw(fatalsToBrowser warningsToBrowser);
use CGI::Cookie;
use Data::Dumper;
use List::Util qw/min max/;
warningsToBrowser(1);
# print start of HTML ASAP to assist debugging if there is an error in the script
print page_header();
# Get Cookies
%cookies = CGI::Cookie->fetch;
# If no cookie, display login page
if (!%cookies){
# Redirects the user to login.cgi
print show_login_form();
}
#if cookie
# do something
print page_trailer();
login.cgi
答案 0 :(得分:0)
错误End of script output before headers:
表示您的脚本已完成而未输出任何内容。从本质上讲,您已经创建了CGI::Cookie
但未创建sent it to the browser:
$cookie->bake;
如果您想设置cookie然后重定向到另一个页面,可以使用:
print redirect(-uri => 'other_page.html', -cookie => $cookie);