Por favor, parece loucura, mas não é... Leia com atenção... CURL timeout

537 views
Skip to first unread message

Bernardo Hoehl

unread,
Feb 4, 2011, 12:01:25 PM2/4/11
to nfe...@googlegroups.com
Oi Amigos,


Não sei se isso é um problema relacionado com o curl do Mac Os X, ou outra coisa, se os amigos puderem testar para mim, eu agradeceria...

O código phpnfe que possuo é 100% funcional, não existe mais nada para eu fuçar...

Mas de certa forma, o php do Apache acaba sempre usando o curl do Unix, não importa quantas camadas existem em cima.

Se eu mover o código para uma máquina Windows ou Linux, tudo funciona Ok.

Estamos há 20 dias com este problema...

Os servidores que tenho que usar no RJ são:




O problema:

Tenho usado nfephp por meses sem problemas e há 20 dias não consigo me comunicar com um dos serviços acima, e poucas vezes nenhum do dois.

O problema se alterna entre servidores. 

Ontem não conversava com o serviço de homologação, mas conversava com o serviço de produção.

Hoje o problema se alternou. Converso com homologação e não converso com produção.

Não preciso entrar no mérito do código nfephp, e descobri um simples teste:

==== Comando inicia:

* About to connect() to nfe.sefazvirtual.rs.gov.br port 443 (#0)
*   Trying 200.233.3.104... connected
* Connected to nfe.sefazvirtual.rs.gov.br (200.233.3.104) port 443 (#0)
* SSLv3, TLS handshake, Client hello (1):
* SSLv3, TLS handshake, Server hello (2):
* SSLv3, TLS handshake, CERT (11):
* SSLv3, TLS handshake, Request CERT (13):
* SSLv3, TLS handshake, Server finished (14):
* SSLv3, TLS handshake, CERT (11):
* SSLv3, TLS handshake, Client key exchange (16):
* SSLv3, TLS change cipher, Client hello (1):
* SSLv3, TLS handshake, Finished (20):
* SSLv3, TLS change cipher, Client hello (1):
* SSLv3, TLS handshake, Finished (20):
* SSL connection using RC4-MD5
* Server certificate:
subject: C=BR; O=ICP-Brasil; OU=Autoridade Certificadora SERPROACF; OU=CONTRIBUINTE; OU=Equipamento A1; CN=nfe.sefazvirtual.rs.gov.br
start date: 2010-06-23 20:08:03 GMT
expire date: 2011-06-23 19:35:53 GMT
common name: nfe.sefazvirtual.rs.gov.br (matched)
issuer: C=BR; O=ICP-Brasil; OU=Servico Federal de Processamento de Dados - SERPRO; OU=CSPB-1; CN=Autoridade Certificadora do SERPRO Final v2
SSL certificate verify ok.
> GET /ws/nferecepcao/NfeRecepcao.asmx HTTP/1.1
> User-Agent: curl/7.19.7 (universal-apple-darwin10.0) libcurl/7.19.7 OpenSSL/0.9.8l zlib/1.2.3
> Accept: */*
< HTTP/1.1 403 Forbidden
< Content-Length: 89
< Content-Type: text/html
< Server: Microsoft-IIS/6.0
< X-Powered-By: ASP.NET
< Date: Thu, 03 Feb 2011 22:36:30 GMT
<HTML>HTTP Error 403.7 - Forbidden: SSL client certificate is required.</HTML>



* Connection #0 to host nfe.sefazvirtual.rs.gov.br left intact
* Closing connection #0
* SSLv3, TLS alert, Client hello (1):

====== fim do comando


Como você vê, ontem o servidor terminava a conversa me pedindo um certificado, ou seja, eu conversava com o servidor.

Mas quando tento a mesma coisa com o servidor de homologação: (ontem)

===== Comando inicia

* About to connect() to homologacao.nfe.sefazvirtual.rs.gov.br port 443 (#0)
*   Trying 200.233.3.103... connected
* Connected to homologacao.nfe.sefazvirtual.rs.gov.br (200.233.3.103) port 443 (#0)
* SSLv3, TLS handshake, Client hello (1):
* SSLv3, TLS handshake, Server hello (2):
* SSLv3, TLS handshake, CERT (11):
* SSLv3, TLS handshake, Server finished (14):
* SSLv3, TLS handshake, Client key exchange (16):
* SSLv3, TLS change cipher, Client hello (1):
* SSLv3, TLS handshake, Finished (20):
* SSLv3, TLS change cipher, Client hello (1):
* SSLv3, TLS handshake, Finished (20):
* SSL connection using RC4-MD5
* Server certificate:
 subject: C=BR; O=ICP-Brasil; OU=Autoridade Certificadora SERPROACF; OU=CONTRIBUINTE; OU=Equipamento A1; CN=homologacao.nfe.sefazvirtual.rs.gov.br
 start date: 2010-06-23 20:03:27 GMT
 expire date: 2011-06-23 19:32:40 GMT
 common name: homologacao.nfe.sefazvirtual.rs.gov.br (matched)
 issuer: C=BR; O=ICP-Brasil; OU=Servico Federal de Processamento de Dados - SERPRO; OU=CSPB-1; CN=Autoridade Certificadora do SERPRO Final v2
 SSL certificate verify ok.
> GET /ws/nferecepcao/NfeRecepcao.asmx HTTP/1.1
> User-Agent: curl/7.19.7 (universal-apple-darwin10.0) libcurl/7.19.7 OpenSSL/0.9.8l zlib/1.2.3
> Accept: */*
* SSLv3, TLS handshake, Hello request (0):

===== fim do comando


O comando entra em timeout...

E isso se alterna a cada dia ou mesmo quando levo meu laptop de casa para o trabalho ou quando mudo de serviço de internet.

===== Curl version:
curl --version
curl 7.19.7 (universal-apple-darwin10.0) libcurl/7.19.7 OpenSSL/0.9.8l zlib/1.2.3
Protocols: tftp ftp telnet dict ldap http file https ftps 
Features: GSS-Negotiate IPv6 Largefile NTLM SSL libz 
==== end version

Eu importo meu XML para dentro do programa gratuito do Sefaz-SP e sempre envio e consulto com sucesso.

Safari e Firefox conversam o tempo todo com ambos servidores, com sucesso!

Eu agradeço sua atenção em ler este longo email,

Obrigado!


Bernardo Höhl
Rio de Janeiro

progr...@pemazaamazonia.com.br

unread,
Feb 4, 2011, 12:16:35 PM2/4/11
to nfe...@googlegroups.com
Bernardo eu tive problemas no inicio com os servidores de MT. para resolver este problema eu fiz um downgrade do cUR e da libcURL para a versão 7.19.5, no meu caso resolveu. Pode ser uma idéia. A unica diferença era que no meu caso não alternava.

Espero que te ajude ou pelo menos de dê uma luz

t + Deo - Desenvolvimento.




De: "Bernardo Hoehl" <bern...@correiofacil.com>
Enviado: sexta-feira, 4 de fevereiro de 2011 14:02
Para: nfe...@googlegroups.com
Assunto: [nfephp] Por favor, parece loucura, mas não é... Leia com atenção... CURL timeout
--
Você recebeu esta mensagem porque está inscrito no Grupo "NFePHP".
Para Postar: nfe...@googlegroups.com
Para Sair do Grupo: nfephp+un...@googlegroups.com
Link: http://groups.google.com.br/group/nfephp?hl=pt-BR
-------
FAQ: https://www.assembla.com/wiki/show/nfephp/FAQ
Como Participar: https://www.assembla.com/wiki/show/nfephp/Como_participar
Como Utilizar: http://www.assembla.com/wiki/show/nfephp/Como_utilizar

Roberto Leite Machado

unread,
Feb 4, 2011, 2:50:32 PM2/4/11
to nfe...@googlegroups.com
Bernardo;

Vou ser muito sincero com você, esse problema de instabilidade que você
está vivenciando é novo para mim. No inicio do projeto tive muitos
problemas devido a versões diferentes do cURL e do SSL que os sistemas
usavam. Mas eu sempre uso LINUX, em algumas distribuições diferentes é
verdade e por isso tive problemas. Hoje praticamente só uso Debian e
derivados e quando posso escolher é Debian mesmo. Se o sistema funciona
em Linux por que a insistência no uso do MacOSX. Não tem como deixar uma
maquina virtual com o Debian, por exemplo.

Abraço

PS: não respondi seu email antes pois em muitos dos meus clientes não
tenho maquina para usar e fico sem email e sem skype.

Roberto

Bernardo Hoehl

unread,
Feb 4, 2011, 4:21:56 PM2/4/11
to nfe...@googlegroups.com
Oi Roberto,

Obrigado por responder...

Eu me especializei em criar soluções "INCOMUNS" no ambiente Mac Os X.

E preciso confessar: sou macmaníaco de carteirinha.

As minhas rotinas rodam no ambiente "Filemaker", um tipo de banco de dados para Mac.

Queria um dia te mostrar minhas coisas, você vai gostar muito de ver...

Uma possibilidade que estou considerando é provisoriamente mover o serviço de envio para um servidor Linux, usar o rsync para sincronizar pastas em ssh e fazer uma requisição em no servidor "disparando a NFe para o Sefaz"... Mas seria provisóriamente mesmo.

Outra possibilidade que eu e Rogério consideramos é escrever um código todo em Java, usando o Axis para a conversa com o Web Service, aí queria seu conselho...

No aguardo,


Bernardo


=============

Edmar Wiggers

unread,
Feb 4, 2011, 5:32:08 PM2/4/11
to nfe...@googlegroups.com
Oi Bernardo,

É posível que o próprio Mac OS X seja a fonte do problema.

Como vc informa que o problema é instável, e não determinístico,
provavelmente não foi causado por uma mudança no ambiente de
autorização da SVRS. Tb (q eu saiba) não tivemos mais ninguém
informando q as coisas pararam de funcionar direito 20 dias atrás.

E se antes tudo funcionava, e depois começou a dar problema, alguma
coisa mudou, com certeza absoluta. Se não foi a SVRS, parece q sobram
2 alternativas: seu link Internet e o Mac OS X. Se mudar o link
Internet para outro provedor (celular 3G por exemplo) não resolver
nada...

Sobre uma possível razão para o sistema operacional começar a dar
problema do nada, minha única explicação é auto-update / patches.

Boa sorte na busca de uma solução.

Obs.: Sobre o Java, em princípio Java é o COBOL de hj em dia. É
impossível não funcionar. Com q performance e a q custo de programação
é outro problema, mas feito direito q vai funcionar vai.

Edmar Wiggers
Macrovita Alimentos
Tel.: 48-3233-4615 / 48-9966-0074
Email: e...@macrovita.com.br
Web: www.macrovita.com.br

Em 4 de fevereiro de 2011 17:50, Roberto Leite Machado
<roberto...@superig.com.br> escreveu:

Bernardo Hoehl

unread,
Feb 4, 2011, 8:03:08 PM2/4/11
to nfe...@googlegroups.com
Obrigado amigos.

Eu ainda cogito a possibilidade de ser alguma exigência de segurança do Mac Os X relacionada a configuração do servidor Virtual RS.

Veja que tenho o software rodando em pelo menos 3 Macs e o problema se repete em todos... Não creio que seja patch no meu portátil.

Mas agradeceria se os amigos experimentasse rodar o comando que rodei em meu terminal, repetindo para cada servidor, homologação e produção.

Boa noite!


Bernardo

=============

FerreiraH.

unread,
Feb 4, 2011, 8:18:09 PM2/4/11
to nfe...@googlegroups.com
Bernardo seria isso ?
helder@Bob104:/var/www/www2/b2stoknfephp/certs$ curl -vv --url "https://nfe.sefazvirtual.rs.gov.br/ws/nferecepcao/NfeRecepcao.asmx"
O programa 'curl' não está instalado no momento.  Você pode instalá-lo digitando:
sudo apt-get install curl

Acho que teria de instalar o curl no desktop ?


--
Ferreira Helder
B2Stok.net  B2Stok
Voce pode colaborar

Bernardo Hoehl

unread,
Feb 4, 2011, 8:33:26 PM2/4/11
to nfe...@googlegroups.com
Você tem uma maquina Linux com o nfephp rodando?

E ela diz que não tem curl???

tenta digitar no terminal:

whereis curl

Veja que aqui no meu mac ele ficar em /usr/bin/curl

Talvez você tenha que digitar o path inteiro do comando, por exemplo:

/usr/bin/curl -vv --url "https://nfe.sefazvirtual.rs.gov.br/ws/nferecepcao/NfeRecepcao.asmx" --insecure

e

/usr/bin/curl -vv --url "https://homologacao.nfe.sefazvirtual.rs.gov.br/ws/nferecepcao/NfeRecepcao.asmx" --insecure

Veja em anexo pdf do meu infophp:

Ele diz que meu php está em /usr...

phpinfo.php
resultado de infophp.pdf

Roberto Leite Machado

unread,
Feb 5, 2011, 5:55:13 AM2/5/11
to nfe...@googlegroups.com
Bernardo;

Quanto ao seu questionamento sobre o curl segue :

administrador@ubuntu:~$ curl -vv --url


"https://nfe.sefazvirtual.rs.gov.br/ws/nferecepcao/NfeRecepcao.asmx"
* About to connect() to nfe.sefazvirtual.rs.gov.br port 443 (#0)
* Trying 200.233.3.104... connected
* Connected to nfe.sefazvirtual.rs.gov.br (200.233.3.104) port 443 (#0)

* successfully set certificate verify locations:
* CAfile: none
CApath: /etc/ssl/certs


* SSLv3, TLS handshake, Client hello (1):
* SSLv3, TLS handshake, Server hello (2):
* SSLv3, TLS handshake, CERT (11):

* SSLv3, TLS alert, Server hello (2):
* SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate
verify failed
* Closing connection #0

Funciona, sim e todas as vezes. Um detalhe o MAC usa uma versão
modificada do ssl que inclui contribuições da fundação mozilla não me
lembro bem o que é diferente mas tem algo diferente sim.

Quanto a sua ideia de criar uma API em java é uma solução definitiva, o
único problema que vejo é o tempo necessário para isso, tendo em vista a
curva de desenvolvimento em java ser bem lenta.

De qualquer forma, boa sorte, e permaneço a disposição no que puder
ajudar. Vou ver com um amigo se consigo uma cópia do mac os x e colocar
em uma maquina virtual para fazer testes neste ambiente também.

Um abraço
Roberto

Éwerton Cardoso

unread,
May 4, 2016, 5:15:39 PM5/4/16
to NFePHP
Olá pessoal! Antes tarde do que nunca...

Também tive este problema, fiz 2 coisas:


e rodei com o apache, pois antes estava rodando com o servidor embutido do php.

Espero ter ajudado!

Abraço!

Att,
Éwerton Cardoso

Rafael Carvalho

unread,
May 10, 2016, 2:19:06 PM5/10/16
to NFePHP
Também tive esse problema no OSX e estou tendo na Amazon utilizando o linux com a distro deles.

Provei que o problema era deles simplesmente instalando o WAMP numa VM aqui no Macbook Air e, fazendo exatamente os mesmos processos, tudo funcionou normalmente.

cURL, SSL e as Libs do PHP são uma dor de cabeça. Cada update do YUM eu sofro.

Abraços.

Ederson Pereira de Brito

unread,
May 10, 2016, 4:13:10 PM5/10/16
to nfe...@googlegroups.com

Na amazon tive problemas com ubuntu deles em algumas aplicaçao q rodava legal local depois q mudei para Debian nunca mais tive problema a varios anos ok.

--
--
Você recebeu esta mensagem porque está inscrito no Grupo "NFePHP".
Para Postar: nfe...@googlegroups.com
Para Sair do Grupo: nfephp+un...@googlegroups.com
Link: http://groups.google.com.br/group/nfephp?hl=pt-BR
-------
Repositório: https://github.com/nfephp-org/nfephp
---
Você recebeu essa mensagem porque está inscrito no grupo "NFePHP" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para nfephp+un...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.

Roberto Machado

unread,
May 10, 2016, 4:15:21 PM5/10/16
to nfe...@googlegroups.com
LINUX e DEBIAN ... eu mesmo só uso eles no servidor .... (e UBUNTU no desenvolvimento) 

Show de BOLA .. inclusive com PHP7 só alegria 😁🙌

Roberto

Roberto Machado

unread,
May 10, 2016, 4:16:52 PM5/10/16
to nfe...@googlegroups.com
Recomendo fortemente aos amigos que usem VAGRANT ou mesmo o HOMESTEAD para desenvolver, principalmente aquiles que usam WAMPP ... XAMPP e troços assim 


Roberto

Rafael Carvalho

unread,
May 10, 2016, 4:40:15 PM5/10/16
to NFePHP
Estou pensando seriamente em migrar o servidor da Amazon para Debian o quanto antes.

Trabalhei a minha vida toda com eles, mas quando vi a opção pela distro nativa da Amazon, pensei "Bem, o que pode dar errado? :) 

Roberto Machado

unread,
May 10, 2016, 4:43:48 PM5/10/16
to nfe...@googlegroups.com
Na duvida use sempre DEBIAN (stable) ou UBUNTU (stable LTS)
E mantenha o server atualizado !!!

Roberto

Reply all
Reply to author
Forward
0 new messages