У меня много проблем с получением моего Perl CGI-скрипта для рендеринга HTML.Он продолжает выводить HTML как обычный текст.Я даже пытался явно установить Content-Type с print header("text/html");
Что-то не так с приведенным ниже кодом?-
use CGI qw(:standard);
# other code
print header("text/html");
# also tried just print header;
my $banner = "Some text";
print start_html($banner);
print h3($banner);
print start_form(-method=>"POST");
# HTML form specific code
print end_form;
print end_html;
Когда я проверяю вкладку Элементы в инструментах разработчика Chrome, по какой-то причине весь HTML-код оборачивается тегом <pre>
, который, в свою очередь, находится внутри другого HTML-документа.Так что HTML-код искажен, но я не могу понять, почему -
<code> <html>
<head></head>
<body>
<pre style="word-wrap: break-word; white-space: pre-wrap;"><!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US">
<head>
<title>Some text</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<h3>Some text</h3><form method="post" action="/path/script.pl?param1=val1¶m2=val2" enctype="multipart/form-data">
//form specific code
</form>
</body>
</html>
Любая помощь будет принята с благодарностью.