Executar um programa perl em interface web
Olá,, tenho um programa escrito em perl,, e preciso executar este programa num browser ou seja em interface web,, preciso passar de uma página htm duas variáveis para executar neste programa perl... Ex: tenho de passar a variavel teste e teste1 para executar o seguinte código perl:(no terminal seria assim) perl programa teste /var/log
Alguém me ajuda??
Executar um programa perl em interface web
tipo vc faria assim.
se vc kizesse dar um cat em algum arquivo
`cat arquivo.txt`
isso voce pode por numa variavel ou numa rotina
para por numa variavel seria assim
$var=`cat arquivo.txt`;
e em uma rotina
sub rotina{ `cat arquivo.txt`} ;
e para usar a rotina
&rotina;
cat e um exemplo voce pode executar qualquer comando.
ass: hildebrando
Executar um programa perl em interface web
((
Para executar um script perl na web ele deverá conter os cabeçãlhos de iniciação de um HTML, isto é:
apena as saídas de print.... não funciona pois o browse não sabe o que fazer com isso, então temos o seguinte exemplo:
-----------------------------------------------------#!/usr/bin/perl
&AbreHtml;
&Sua_Funcao_com_cat
&FechaHtml
sub AbreHtml {
print "Content-type: text/htmlnn";
print "<html><head><title>Sua Página</title>n";
print "<body>";
return 1;
}
##### Fecha o HTML
sub FechaHtml {
print "</body></html>n";
return 1;
}
-----------------------------------------------------
onde &Sua_Funcao_com_cat pode ser o código do Scorpion com o cat ou outra cousa qualquer;
Eu uso o log de um analizador de segurança de firewall que me dava a saída para o terminal onde acrescentei na mão, não em forma de funções como acima os códigos de html e acesso via web como vai indo meu site....
))
Executar um programa perl em interface web
realmente esqueci do codigo do cabecalho html <IMG SRC="images/forum/smilies/icon_smile.gif">)
Executar um programa perl em interface web
Olá obrigado pela ajuda.. mas depois destes esquemas descritos acima o erro foi o seguinte:
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request
Mas se executo algum outro arquivos perl em meu servidor ele roda, então o problema nao é no servidor,... o que será que pode ser??? pois na realidade preciso executar o radiusreport em interface web para controle de horas..... Grato pela atenção...
Executar um programa perl em interface web
cola o log do apache aqui pra gente dar uma olhada...
Executar um programa perl em interface web
[Mon Aug 19 20:12:33 2002] [error] syntax error at /home/httpd/perl/teste.pl lin
e 7, near "$var ´radiusreport -tbac -l joseane -f /var/log/radacct/serverras/det
ail´"
Este é o erro no log...
Executar um programa perl em interface web
[Mon Aug 19 20:12:33 2002] [error] syntax error at /home/httpd/perl/teste.pl lin
e 7, near "$var ´radiusreport -tbac -l joseane -f /var/log/radacct/serverras/det
ail´"
Este é o erro no log...
Executar um programa perl em interface web
como pode ver o erro e de programacao... veja com quem fez o script oque esta errado <IMG SRC="images/forum/smilies/icon_smile.gif">
Executar um programa perl em interface web
Coloque o path completo do radiusreport na chamada ao mesmo.
Executar um programa perl em interface web
((
Execute os programas em perl no shell, assim:
# perl script.pl
Pois assim vc verá os erros e as msg de erro ou verá sua resposta em HTML funcionando.
Isso tb funciona no perl para Window$ (ActivePerl)
pelo DOS.
Deste modo vc não precisa ver seus logs.....
))