Tempo aproximado para leitura: 00:07:00 min
Dúvida
Como realizar a implantação Webservice SARAWS com Apache 2.4.x?
Ambiente
SARA – Configurações – A partir da versão 12
Solução
O SARAWS é o módulo do Sistema de recintos aduaneiros que permite realizar integrações por meio de Web services com o uso do protocolo SOAP - Simple Object Access Protocol. Para seu funcionamento é necessário realizar a publicação deste programa como um módulo ISAPI - Internet Server Application Programming Interface em algum servidor web, como o IIS - Internet Information Services e o Apache. Para realizar a instalação do SARAWS no servidor web Apache, na versão 2.4.x, este guia passo a passo demonstra todo o processo de instalação e configuração para o serviço.
O programa SARAWS.dll é um módulo do produto de recintos aduaneiros compilado para a plataforma 32 bits do Windows. Por esse motivo, para que ocorra o correto funcionamento deste programa em um servidor web Apache, este servidor também deverá ser uma versão compilada para 32 bits. Para realizar o download do servidor web Apache, utilize o link https://www.apachelounge.com/download/, escolhendo sempre a versão mais atual estável compilado em 32 bits. A imagem abaixo ilustra como escolher a versão correta do servidor Apache para instalação.

Após feito o download do servidor Apache versão 32 bits, seguir o passo a passo abaixo para implantação:
1. Extrair o arquivo do servidor Apache para o diretório desejado. Como sugestão, descompacte o arquivo em C:\Apache24;

2. Dentro da pasta Apache24, crie uma nova pasta chamada isapi;
- Mova a DLL SARAWS.dll para dentro deste diretório;
- Crie um arquivo chamado SARA_CONEXAO.ini dentro deste diretório e adicione o conteúdo abaixo no arquivo para as configurações de acesso ao banco de dados:

3. Navegue para o diretório de configuração do servidor Apache, localizado em C:\Apache24\conf;
4. Abra o arquivo httpd.conf e realize as seguintes configurações:
- Configure a porta desejada para o servidor web Apache rode. Procure pela instrução Listen dentro do arquivo e informe a porta desejada, tomando o cuidado de não informar uma porta que já esteja em uso por outro serviço. Exemplo: Listen 8083 ou Listen localhost:8083.
- Habilite o módulo de ISAPI garantindo que possui a instrução LoadModule isapi_module modules/mod_isapi.so no arquivo. Caso possua a instrução mas esteja com um # no início, remova este caractere, pois ele é interpretado como uma linha comentada para as configurações.
- Adicione o script alias para habilitar o diretório do módulo de isapi no servidor Apache. Para isso, adicione a instrução ScriptAlias /isapi/ "${SRVROOT}/isapi/" dentro do bloco de configuração <IfModule alias_module></IfModule>. Exemplo:
httpd.conf - ScriptAlias<IfModulealias_module>## Redirect: Allows you to tell clients about documents that used to# exist in your server's namespace, but do not anymore. The client# will make a new request for the document at its new location.# Example:# Redirect permanent /foo http://www.example.com/bar## Alias: Maps web paths into filesystem paths and is used to# access content that does not live under the DocumentRoot.# Example:# Alias /webpath /full/filesystem/path## If you include a trailing / on /webpath then the server will# require it to be present in the URL. You will also likely# need to provide a <Directory> section to allow access to# the filesystem path.## ScriptAlias: This controls which directories contain server scripts.# ScriptAliases are essentially the same as Aliases, except that# documents in the target directory are treated as applications and# run by the server when requested rather than as documents sent to the# client. The same rules about trailing "/" apply to ScriptAlias# directives as to Alias.#ScriptAlias /cgi-bin/ "${SRVROOT}/cgi-bin/"ScriptAlias /isapi/ "${SRVROOT}/isapi/"</IfModule> -
Garanta que a instrução Define SRVROOT c:/Apache24 esteja contida no arquivo para que seja possível utilizar a variável ${SRVROOT} para identificação da pasta raiz do servidor.
-
Fora de qualquer instrução <IfModule XXXXXX></IfModule>, adicione as configurações de permissão para o diretório do módulo ISAPI conforme abaixo:

-
Adicione o Handler para identificar as extensões dos programas de módulo ISAPI. Adicione a instrução AddHandler isapi-handler .dll dentro do bloco de configuração <IfModule mime_module></IfModule>. Exemplo:
<IfModule mime_module> # # TypesConfig points to the file containing the list of mappings from # filename extension to MIME-type. # TypesConfig conf/mime.types # # AddType allows you to add to or override the MIME configuration # file specified in TypesConfig for specific file types. # #AddType application/x-gzip .tgz # # AddEncoding allows you to have certain browsers uncompress # information on the fly. Note: Not all browsers support this. # #AddEncoding x-compress .Z #AddEncoding x-gzip .gz .tgz # # If the AddEncoding directives above are commented-out, then you # probably should define those extensions to indicate media types: # AddType application/x-compress .Z AddType application/x-gzip .gz .tgz # # AddHandler allows you to map certain file extensions to "handlers": # actions unrelated to filetype. These can be either built into the server # or added with the Action directive (see below) # # To use CGI scripts outside of ScriptAliased directories: # (You will also need to add "ExecCGI" to the "Options" directive.) # AddHandler cgi-script .cgi AddHandler isapi-handler .dll # For type maps (negotiated resources): #AddHandler type-map var # # Filters allow you to process content before it is sent to the client. # # To parse .shtml files for server-side includes (SSI): # (You will also need to add "Includes" to the "Options" directive.) # #AddType text/html .shtml #AddOutputFilter INCLUDES .shtml</IfModule> |
- Salve o arquivo httpd.conf com as configurações realizadas.
- Clique neste link para conferir um arquivo httpd.conf já configurado com o módulo de ISAPI para o SARAWS.
5. Abra o cmd - comando do Windows, como administrador e navegue até o diretório de instalação do Apache. Exemplo: C:\Apache24\bin;
- Execute o comando httpd.exe -k install -n "SARA - SARAWS". Exemplo:

- Para desinstalar, execute o comando httpd.exe -k uninstall -n "SARA - SARAWS" ou sc delete "SARA - SARAWS"
- Feche o cmd.
6. Abra o gerenciador de serviços do Windows, services.msc e procure pelo serviço SARA - SARAWS e inicie o serviço. Exemplo:

7. Abra um navegador web e teste o link http://localhost:8083/isapi/SARAWS.dll tomando o cuidado de informar a porta correta no link conforme o que foi configurado na instrução Listen no httpd.conf. Se tudo ocorrer bem, será exibido uma página conforme imagem abaixo:

8. Pronto! O seu SARAWS já está instalado, configurado e pronto para a utilização.
0 Comentários