Eu configurei o apache2 no servidor fedora e quero gerar HTML com script perl. Este é o meu script de teste que fiz com a ajuda do perldoc:
#!/usr/bin/perl
use strict;
use warnings;
use CGI;
my $cgi = CGI->new;
print $cgi->header,
$cgi->start_html('works'),
$cgi->h1('hello '),
$cgi->end_html;
Ele retorna "Internal Server Error", mas quando eu o executo no terminal com perl test.cgi
, parece bem.
Eu coloquei em / cgi-bin dir, outros scripts scripts funcionam sem problema.
EDITAR
Eu já tentei com tarefas de uma linha como system("date")
e está retornando a data no navegador.
Também verifiquei as permissões para erros.
Funciona ao gerar com o seguinte trecho de código.
print "Content-type:text/html\r\n\r\n";
print '<html>';
print '<head>';
print '<title>Some Title</title>';
print '</head>';
print '<body>';
print '<h2>Hello </h2>';
print '</body>';
print '</html>';
Registro de erros:
[Wed Aug 01 20:16:19.108179 2018] [cgid:error] [pid 3781:tid 140519697967360] (8)Exec format error: AH01241: exec of '/var/www/cgi-bin/test.cgi' failed
[Wed Aug 01 20:16:19.108863 2018] [cgid:error] [pid 1112:tid 140518772139776] [client 192.168.0.105:46870] End of script output before headers: test.cgi
SOLUÇÃO Eu acho que um dos problemas foi provavelmente HTML :: Entities instalado, então funcionou
Tags perl fedora html cgi apache-http-server