You are on page 1of 4

06.

Configurando o Server Protheus para HTTP


Ir para o final dos metadados Ir para o incio dos metadados

Abrangncia
Verso 7.10 Verso 8.11 LIB WEBEX

As configuraes de http do Server Protheus permitem a configurao de sites estticos e dinmicos , com a criao de um ou mais hosts de acesso, criao de pastas virtuais, e dites dinmicos com resposta para links .apl e .apw simultaneamente. Neste documento abrangeremos um resumo exemplificado das configuraes HTTP do Server Protheus. As sees abaixo devem ser inseridas no arquivo de configuraes do servidor Protheus ( mp8srv.ini ) Configurao Mnima [http] Enable=1 Path=c:\Ap_Data\http Observao: Vale lembrar que , aps ter inserido a configurao do [http] no INI do Protheus, importante baixar o Server e subir novamente. Com esta configurao, habilitamos o Server Protheus como um servidor de arquivos e pginas estticas , com o HTTP na porta padro (80), e utilizando o diretorio em c:\Ap_data\Http como diretrio raiz de publicaes WEB. Como no h configurao de host especfica, um arquivo nesta pasta poser ser acessado atravs dos hosts http://localhost ( desde que o browse seja aberto na estao servidora ) , http://nnn.nnn.nnn.nnn ( IP da estao servidora ) ou http://xxxxxxxxxx ( nome da estao servidora ) . Por exemplo : Dentro da pasta configurada na chave PATH do HTTP, crie um arquivo chamado default.htm , com o seguinte contedo ( pode ser criado inclusove com o notepad .. ) <hr> Ola Mundo HTTP <hr> Agora , abra um Web Browser no mesmo equipamento, e digite na url : http://localhost : Ao acessar esta url , dever ser mostrado na tela do Browse huas barras horizontais e o texto 'Ola Mundo HTTP' entre elas . Atendendo requisies .apl Agora, vamos habilitar este host para atender requisies de funes, atravs de link .apl. Para tal , precisamos apenas do nome de um Environment (ambiente) configurado no .INI . Podemos usar o prprio ambinete do ERP . Basta acrescentarmos na seo http a chave Environment=<nome_do_ambiente> , para que este ambiente passe a atender o processamento de funes Advpl atravs de links .apl. Por exemlo , caso o ambiente configurado para o ERP chame-se EnvADS710 , basta acrescentar na seo http a chave Environment=EnvADS710 . O .INI ficaria conforme abaixo : [http] Enable=1 Path=c:\Ap_Data\http Environment=EnvADS710 Para testar a execuo de funes , abra um Web Browse na estao servidora, e acesse o link http://localhost/time.apl . IStoir executar a funo Advpl TIME() , que retornar ao Browse uma string contendo o horrio atual no servidor no formato HH:MM:SS Atendendo requisies .apw A configurao para atendimento de requisies de processamento http atravs de links .apw envolve a criao de uma nova seo no .INI , com um nome no-especfico, para configurar o tipo de job que ir executar o processamento ( WEB ou WEBEX ) , juntamente com as funes responsveis pela inicializao e conexo das Threads Advpl , e na seo http configuramos uma chave chamada ResponseJob , apontando para a seo de configurao do JOB. Por exemplo , para configurarmos o atendimento de requisies .apw em um ambiente ERP , utilizando a infraestrutura APWEBEX , vamos criar uma seo chamada ERP_APWEBEX, apontando para as funes da InfraEstrutura APWEBEX correspondentes :

[ERP_APWEBEX] type=WEBEX onstart=STARTWEBEX onconnect=CONNECTWEBEX Environment=EnvADS710 Instances=1,3 SigaWeb=MAK Atravs desta configurao, especificamos um Job do tipo WEBEX , onde a funo de inicializao utilizada ser a STARTWEBEX , a funo de conexo ser a CONNECTWEBEX ( ambas da Infra-estrutura APWEBEX ) , que utilizaro o ambiente AnvADS710 para processamento, e sero colocadas no ar apenas uma Working Thread para atendimento de processamento, at o mximo de 3 Threads. As threads colocadas no ar acima do nmero mnimo ( no exemplo, apenas 1 ) , so colocadas 'on-demand' caso sejam realizadas requisies .apw ao Servidor e no hajam Working Threads dispovveis no momento e o nmero de Working Threads no ar ainda no tenha atingido o mximo definido. Atravs da configurao SigaWeb=MAK, informamos ao sistema, que a mesma est sendo utilizada para o desenvolvimento de um mdulo especfico, e no estamos utilizando um mdulo Web da ferramenta Protheus 8. Caso a configurao SigaWeb no seja informada, o valor 'MAK' assumido como default. Agora , para que esta seo de Jobs seja utilizada para o atendimento efetivo de requisies .;apw , devemos estecific-la na seo http , atravs da chave REsponseJob. No caso , inserimos a chave ResponseJob=ERP_APWEBEX , fincando a seo HTTP conforme abaixo: [http] Enable=1 Path=c:\Ap_Data\http Environment=EnvADS710 ResponseJob=ERP_APWEBEX Como as requisies via .apl e via .apw so independentes , possvel configurar a seo http para que Environments diferentes respondam requisies .apl e .apw , ou que no sejam atendidas requisies .apl , apenas .apw . Configurando a seo http para multi-host Todas as configuraes acima vistas pertencem seo default do HTTP . De modo que , tanto faz acessarmos o servidor pelo nome como pelo IP, que o resultado serr o mesmo. Porm, para a utilizao de demais recursos, como diretrios virtuais e mais de um site no mesmo servidor , precisamos configurar um host de acesso. Por exemplo, vamos criar uma configurao de HOST para que o servidor , caso seja acessado pelo NOME da maquia via HTTP , seja visualizado um outro site , e apenas sejam atendidos links .apl : Para isso , devemos criar uma nova seo no .INI , cujo nome deve ser exatamente o host que ser acessado ( como o exemplo vamos supor que o servidor de testes chama-se srvteste ) , logo devemos criar uma seo com este nome . Nesta seo do INI , devemos no mnimo especificar um Path de acesso os arquivos, e as demais configuraes vistas at agora da seo http so opcionais. A configurao PORT do HTTP em um host no suportada: No possvel subir um server protheus em mais de uma porta HTTP. [srvteste] Path=c:\Ap_Data\Testes Environment=EnvTOP710 Deste modo, caso o servidor seja acessado via http atravs de LOCALHOST ou do IP do Server , ser permitido o acesso s funcionalidades configuradas na seo HTTP. Caso seja acessado via nome do servidor ( http://srvteste ) , sero acessados os arquivos de outra pasta , e as requisies .apl sero atendidas pelo Ambiente EnvTOP710 . Utilizando este tipo de configurao, podemos subir vrios sites diferentes na mesma aplicao servidor Protheus, cada qual com o seu diretrio raiz de publicaes , seus ambientes independentes, atendendo ou no requisies .apl e/ou .apw. Configurando diretrios virtuais Ao configurar um host especfico, podemos acrescentar ao mesmo uma barra "/", seguido de um nome para acesso um diretrio virtual, criando desse modo um endereo de acesso composto por um host e um diretrio, que pode se comportar como um outro site, com os arquivos publicados em um path especfico, que poder atender requisies de links .apl e/ou .apw sob um outro ambiente e configurao distinta.

Utilizando diretrios virtuais, possvel, dentro do mesmo host, instalar vrias aplicaes web independentes, todas acessveis sob o mesmo endere base, alterando apenas o diretrio de acesso. Por exemplo, utilizando como host principal o nome do equipamento , "servertst", podemos instalar o mdulo Web "Portal Protheus" sob o host "servertst/portal", o mdulo TCF sob o host "servertst/rhonline", e no host "servertst" podemos configurar um site esttico em Html , com uma apresentao institucional e links para os demais mdulos. Observaes Importantes Ao configurarmos um Host, ele herda as configuraes de atendimento de requisies .apl e .apw especificados na seo HTTP ! De modo que o host do exemplo continuar a atender requisies .apw , porm no ambiente EnvADS710. Visto desta forma, recomendamos fortemente que a seo [http] possua apenas especificado um Path em disco que esteja vazio, e seja criada uma ou mais configuraes de host com as suas devidas propriedades especificas. Todas as demais chaves relacionadas configurao HTTP e aos Jobs WEB e WEBEX so opcionais, para atender necessiades especficas. Estas chaves esto explicadas em maiores detalhes no DEM , na seo XXX Configurando diretrios virtuais Da mesma forma que a criao de hosts, podemos criar um novo host utilizando a barra de diviso '/' para especiicar uma 'pasta virtual' , quue permite a flexibilidade de termos uma pasta dentro de um mesmo host que se comporte como um outro host : Ainda baseando-se no .INI montado nestes exemplos para o servidor de testes, vamos supor que exista uma pasta no disco ( por exemplo , c:\Ap_data\Docs ) , que contenha arquivos HTML de uma documentao que deve estar disponivel na web , utilizando tambm o host http://srvteste . Porm , o host srvteste j aponta para o diretrio c:\Ap_data\Testes. Com o recurso de criao de diretorio virtual no HTTP , criamos apenas uma nova entrada do mesmo host , colocando no nome do mesmo uma barra de diviso'/' , seguido do nome de uma pasta a ser acessada via HTTP ( que no precisa necessariamente existir no disco) , e dentro desta seo acrescentar a chave path , apontando para o diretrio desejado , da mesma maneira utilizada para configurar um host. No exemplo abaixo , criamos a pasta virtual info, dentro do host srvteste, apontando para o path do disco c:\Ap_Data\Docs. De modo que , ao ser acessado via url o endereo http://srvteste/info , a partir dele sero acessados os arquivos da pasta c:\Ap_Data\Docs [srvteste/info] Path=c:\Ap_Data\Docs Vejamos agora como ficou o nosso arquivo .INI, com todas as configuraes acima exemplificadas : ;; Configuiracao de Working Threads usando a infra-estrutura APWEBEX [ERP_APWEBEX] type=WEBEX onstart=STARTWEBEX onconnect=CONNECTWEBEX Environment=EnvADS710 Instances=1,3 ;; Configurao da seo httpo default para atender requisies de .apl e .apw [http] Enable=1 Path=c:\Ap_Data\http Environment=EnvADS710 ResponseJob=ERP_APWEBEX SigaWeb=MAK ;; Configurao do host srvteste para atender requisies via .apl atravs do environment EnvTOP710 [srvteste] Path=c:\Ap_Data\Testes Environment=EnvTOP710 ;; Configurao da pasta virtual info , no host srvteste , para apontar para um path no disco com documentos [srvteste/info] Path=c:\Ap_Data\Docs

Princpio de Funcionamento do HTTP A utilizao do protocolo HTTP no envolve o uso de uma conexo persistente entre o Web Browser e o Servidor HTTP : Isto significa que, ao ser solicitada uma pgina, imagem ou at o processamento de uma funo, o Web Browser abre uma conexo com o Server HTTP, realiza a solicitao e fica com a conexo aberta, aguardando pelo retorno do Server. Quando o server j houver enviado os dados solicitados, a conexo fechada . Processamento de Funes Para o retorno de pginas estticas, imagens e demais arquivos via HTTP, o servidor identifica o que est sendo solicitado pelo Web Browser atravs da extenso do Link. Por exemplo, ao receber uma soilicitao da URL http://oservidor/htmls/imagem.gif, o Server HTTP sabe que deve procurar um arquivo chamado imagem.gif, dentro da pasta htmls a partir da pasta local no servidor configurada para armazenar os arquivos para o acesso HTTP. No servidor Protheus, foram implementadas duas extenses de Link para permitir a execuo de funes Advpl atravs de uma requisio HTTP : A extenso .APL e a extrenso .APW . Quando o servidor recebe uma requisio via HTTP, por exemplo da url http://oservidor/time.apl, e est corretamente configurado para atender esta requisio, o Protheus Server realiza o processamento, e informa para o Web Browser solicitante que a string que ser retornada deve ser interpretada pelo Web Browser como sendo um Script HTML . Caractersticas comuns do processamento de funes Advpl via HTTP Independente da extenso de link utilizada, existem caractersticas e pr-requisitos comuns ao funcionamento de ambas as requisies, que seguem abaixo : A funo, seja Advpl ou uma funo compilada no Repositrio, deve obrigatoriamente ter um retorno do tipo String, pois o Web Browser solicitante ser informado pelo Server Protheus que a string retornada dever ser interpretada e mostrada pelo Browser como um HTML. Devido origem da requisio no ter relao alguma com a interface Remote do Protheus, no possvel utilizar determinadas funes Advpl que foram escritas exclusivamente para esta interface, como por exemplo as funes MsgStop, Alert, e demais funes e objetos de Interface de Janelas. O que ir diferenciar uma funo executada via link .apl e .apw ser as etapas de execuo das mesmas. Esta caracterstica de funcionamento ser melhor esclarecida aps a leitura dos tpicos sobre desenvolvimento de funes .apl e desenvolvimento de funes .apw

You might also like