我正在将一些非常旧的遗留perl cgi代码移动到新服务器上。
所有旧的perl东西似乎都可以工作,除了一个脚本和一行。
我不确定我是否忘记加载某些内容(通常它告诉我我错过了一些东西)
导致错误的代码行:
print $query->redirect(-location=>"/servlet/guestbookServlet?method=displayGuestBook&dir=kam");
错误日志中的错误是
malformed header from script. Bad header=HTTP/1.0 "/servlet/guestbookSe: guestbook.pl
如果我从脚本中输入格式错误的标头。错误的标头=HTTP/1.0 "/servlet/guestbookSe:guestbook.pl
浏览器中很好如果我把
print header
print $query->redirect(-location=>"/servlet/guestbookServlet?method=displayGuestBook&dir=kam");
浏览器只是打印出来(我不确定这看起来是否正确?
HTTP/1.0 "/servlet/guestbookServlet?method Status: "/servlet/guestbookServlet?method
Window-target: kam" Set-cookie: displayGuestBook&dir Expires: -Status Date: Tuesday,
31-Dec-2013 14:04:37 GMT -Location http://www1.mydomain.com/cgi-local/guestbook.pl?
action: -URI http://www1.mydomain.com/cgi-local/guestbook.pl?action: -nph 0 Content-
type: LOCATION
尝试
print $query->redirect("/servlet/guestbookServlet?method=displayGuestBook&dir=kam");
没有-location
.另请查看生成重定向标头下的文档。