PAGUE 6 MESES
LEVE 12 MESES
GARANTIR DESCONTO

Fórum TidHttp com SSL erro de conexão com TOMCAT Linux #559442

20/07/2016

0

Olá! Tenho uma aplicação já funcional em Delphi7 que tem um componente TidHttp e TidSSLIOHandlerSocket que faz download
e Upload de Arquivos de um servidor específico. Para fazer o download e um arquivo por exemplo, chama-se uma URL que aponta
para um servidor que roda Apache Tomcat 7, que possui um Servlet JAVA de download e outro de upload. Para que as rotinas
funcionem em SSL foi necessário copiar as bibliotecas libeay32.dll e ssleay32.dll. Estas bibliotecas SSL são bibliotecas
openssl versão 0.9.6m (bem antigas por sinal) customizadas para o Indy Project, que vem com o Delphi 7.

Abaixo a rotina de Download:

function download_file(dir_relativo,filename,destfilename : string; var msgerr : string) : boolean;
var
buffer : tfilestream;
code : integer;
begin
download_file := false;
Buffer := TFileStream.Create(destfilename, fmCreate or fmShareDenyWrite);
msgerr:='';
try
form1.IdHTTP1.Request.BasicAuthentication := true;
form1.IdHTTP1.Request.UserName := 'comunic';
form1.IdHTTP1.Request.Password := ss2;
try
form1.idhttp1.get(url_base+'downloadfile?filedir='+dir_relativo+'&filename='+filename,buffer);
finally
form1.idhttp1.Disconnect;
download_file:=true;
buffer.free;
end;
except
on E: EIdHTTPProtocolException do begin
code := form1.idhttp1.ResponseCode;
msgerr:='Erro: http response code : ' + inttostr(code);
logweb(param_entrada2_str+'.log','Erro : ' + msgerr);
download_file:=false;
end;
end;

end;


O Servidor do qual os arquivos são baixados roda no Windows Server 2003 Standard e Apache Tomcat 7.
Funciona perfeitamente com e sem SSL. (http:...:8080//... e https://...:8443/...)


AGORA O PROBLEMA:

Instalei um Servidor Apache Tomcat 7, com as "mesmas configurações em vários Linux" : Red Hat, Oracle Linux, CentOS,etc,
e, quando utilizo a URL com SSL para baixar os arquivos recebo a mensagem da aplicação Delphi:

Project xxxx.exe raised exception class EIdOSSLConnectError with message 'Error connecting with SSL'...

Algumas observações importantes:

- Chamando a URL de download de qualquer browser ou outro programa que não seja o Delphi funciona...
- Os servidores Linux estão com a seguinte versão do openssl : 1.0.1e-42
- O servidor atual Windows 2003 que funciona, não tem SSL explicitamente instalado, deve usar alguma biblioteca SSL do TOMCAT
- As bibliotecas SSL do lado dos clients são a versão 0.9.6m do Indy Project
- Sem o SSL funciona normamente no LINUX também


Gostaria de sugestões de como posso resolver este problema para fazer funcionar o download com SSL no Linux.
Ex: Outros componentes, Tenho que mudar de Delphi ?, etc

Desde já gradeço.
Artur
Artur Dietrich

Artur Dietrich

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar