Вы не очень хорошо объяснили себя.Но из ошибок, которые вы получаете, я предполагаю, что это CGI-программа.
CGI-программа отправляет свои выходные данные на STDOUT
, где веб-сервер перехватывает их и обрабатывает различными способами.Чтобы это работало, данные, которые ваша программа печатает на STDOUT
, должны соответствовать различным правилам.Вероятно, наиболее важным из этих правил является то, что первым выводом из вашей программы должны быть заголовки CGI - и, по крайней мере, эти заголовки должны включать заголовок Content-type:
.
Я предполагаю, что вы пытаетесьпокажите выходные данные отладки до того, как ваша программа отправит заголовки CGI.Это не сработает.
Но вы действительно хотите отправить отладочный вывод на STDOUT
?Это кажется плохой идеей.Если вы используете warn()
вместо print()
, то ваш вывод будет вместо STDERR
- и на большинстве веб-серверов STDERR
подключен к журналу ошибок веб-сервера.
Для большего контроля надвывод, сгенерированный warn()
, см. модуль CGI :: Carp .