Aplicações remotas: um exemplo com o Octave

Muita gente esquece que é possível executar remotamente qualquer programa instalado em um servidor web. Como exemplo, vou mostrar como criar um formulário e um script para rodar como um CGI do Apache o Octave, que é um aplicativo GNU para cálculos e gráficos matemáticos.

[ Hits: 39.617 ]

Por: Paulo Buarque Guimaraes em 31/03/2005


Interligando com o Apache



Antes de prosseguir, verifique se o Apache (httpd) está sendo executado em seu servidor e se você tem acesso ao local de armazenagem das páginas html. Essa pasta é geralmente /var/www, mas verifique no arquivo /etc/apache/httpd.conf (aproveite para conferir se o módulo PHP está habilitado, porque vamos precisar).

Para interligar o Octave com o Apache, vamos criar um script que:
  1. Receba os comandos via web;
  2. Crie um arquivo temporário com eles;
  3. Execute o Octave e;
  4. Devolva o resultado.

A princípio, um simples script shell resolveria esse problema. No entanto, vamos precisar usar caracteres não alfanuméricos para representar as expressões matemáticas. O protocolo HTTP requer que símbolos sejam transmitidos em notação hexadecimal e para não ter que convertê-los, vamos usar o PHP, que faz essa conversão de graça. Crie na pasta das páginas web um arquivo octave.php com os seguintes comandos:

<?php
//Executa um script octave - etapa 1
$workdir = "/tmp/";
$script = $workdir."xxx.m"; // cria um arquivo xxx.m
$f = fopen ($script,"w");
fwrite ($f,$_SERVER['QUERY_STRING']); // grava a expressão que veio
fclose($f);
header ("Content-type: text/plain"); // cabeçalho da resposta
passthru ("octave -q $script"); // executa o Octave
unlink($script); // apaga o arquivo
?>

Para testar, digite o seguinte endereço em seu navegador (use o endereço de seu servidor em vez de localhost se for o caso):

http://localhost/octave.php?1+1

Veja a resposta e tente usar qualquer outra expressão mais interessante depois do "?", que corresponde à 'QUERY-STRING' do programa PHP acima.

Página anterior     Próxima página

Páginas do artigo
   1. Usando o Octave
   2. Vetores e gráficos
   3. Arquivos de comandos
   4. Interligando com o Apache
   5. Exibindo os gráficos
   6. Criando uma interface web para o Octave
   7. Conclusão
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Monitorando as conversas do MSN com SCANHILL

Acesso remoto pela Internet de forma simples usando TeamViewer

VLAN entre GNU/Linux, MikroTik e equipamentos Ubiquiti

Instalando o giFT com plugins para as principais redes

Tor Browser e Rede Tor no Arch Linux - Instalação e Utilização

  
Comentários
[1] Comentário enviado por jeffestanislau em 31/03/2005 - 11:02h

Parabéns!!!
Ótimo artigo, muito bem estruturado!!!

[]´s

[2] Comentário enviado por franklinbr em 31/03/2005 - 11:49h

Pow ficou legal esse artigo !!

Acho que falta artigos sobre programas cientificos, mesmo achando que a maioria dos fresquentadores do recinto nao tenham uma ligacao com a area de pesquisa. Mas eu acho que podia ter colocado mais exemplos para praticar ehehehe

parabens !

[3] Comentário enviado por Anjinhoo em 31/03/2005 - 23:52h

excelente artigo.
:>

[4] Comentário enviado por marcelogpl em 02/04/2005 - 23:45h

Parabéns !!!

Realmente é impressionante o poder e o conhecimento que o software livre permite. Este artigo está muito bom e esclarecedor, sugiro que traga mais informações avançadas sobre esta assunto.


Mito bom !!!

[5] Comentário enviado por rtb1023 em 04/04/2007 - 00:51h

f


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts