-
Conteúdo Similar
-
Por gustavopinent
Olá! Esse erro ocorre em um php simples rodando em um servidor compartilhado Locaweb: SSL certificate problem: unable to get local issuer certificate. O php faz uma requisição ao site do Cep Aberto para consulta de endereço informando o CEP (https://www.cepaberto.com/api/v3/cep?cep=95020520)
Olhei o php.ini e não tem nenhuma menção ao arquivo de certificados. Então peguei alguns tutoriais, baixei o arquivo "cacert.pem", coloquei lá e defini o curl no próprio php, ficou assim:
$ch = curl_init($url); curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Token token="' . $token . '"']); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt($ch, CURLOPT_CAINFO, $cacert); curl_setopt($ch, CURLOPT_CAPATH, $cacert); $res = curl_exec($ch); if($res===FALSE) { $Res["erro"] = "curl"; $Res["msg"] = "Execução CURL falhou!"; $Res["descr"] = curl_error($ch); } else { $Res["dados"] = json_decode($res); $Res["http"] = curl_getinfo($ch, CURLINFO_HTTP_CODE); $Res["erro"] = ($Res["http"]==200)? "OK" : "http" ; $Res["msg"] = ($Res["http"]==200)? "" : "Erro HTTP ".$Res["http"] ; } Onde $cacert é o endereço do arquivo "cacert.pem", verificado antes por is_file. Mas o erro é o mesmo, como se eu nada tivesse feito. Tem que configura o Apache? Não sei como configurar o Apache, será que posso? Desabilitar o SSL do php é uma opção que não tentei ainda, dizem que não é aconselhável...
O PHP é o 5.6 (pretendo ir pro 7.4 em breve) e o servidor é CENTOS 5.11 compartilhado, hospedagem Locaweb.
Alguma ideia?
-
Por admin
Bom dia, pessoal!
Vocês já tiveram problemas ao lidar com pagamentos do exterior? Temos uma mensagem do nosso parceiro, o Remessa Online, que criou uma ótima solução para desenvolvedores receber do exterior.
A gente sabe que a cada dia cresce o número de devs trabalhando para empresas gringas. Por conta da pandemia e a necessidade de digitalização do trabalho, essa demanda aumentou muito.
O problema é que nem todo mundo sabe como funciona o processo de pagamento de salário, e quem já vive essa realidade sofre com a demora, a burocracia e taxas altíssimas.
Só para vocês terem uma noção, qualquer transação do exterior nos bancos tradicionais leva de 3 a 5 dias úteis. Além disso, o custo por transação varia entre 5 a 11% sobre o pagamento. É caro demais!
Porém, já existe uma forma mais fácil e econômica de efetuar qualquer tipo de remessa internacional. É por isso que abrimos este tópico!
A plataforma da REMESSA ONLINE soluciona tudo isso. Ela ajuda você a enviar/receber dinheiro de forma ágil e segura.
A ideia nasceu em 2016 e já facilitou a vida de mais de 350 mil pessoas. Além de ser 100% digital, o pagamento cai em até 1 dia útil e o custo por transação a partir de 1,3%. Sem burocracia e sem letras miúdas.
Veja o que a Remessa também pode fazer por você:
• Investir no exterior;
• Pagar cursos de fora;
• Horário de atendimento estendido, das 9h às 20h;
• Atendimento multicanal (telefone, chat, site e WhatsApp);
• Transparência total, pois você sabe exatamente quanto vai pagar desde o momento de cadastro.
• Receber via GoogleAdsense e Twitch (se você também é streamer ou produtor de conteúdo).
É hora de desburocratizar o sistema. Nós ajudamos empresas e pessoas a fazerem transações internacionais com rapidez e inovação.
Provavelmente vocês ainda terão dúvidas sobre como funciona! Na página da Remessa vocês podem ter mais informações: https://lp.remessaonline.com.br/receba-do-exterior.
-
Por admin
Bom dia, pessoal!
Vocês já tiveram problemas ao lidar com pagamentos do exterior? Temos uma mensagem do nosso parceiro, o Remessa Online, que criou uma ótima solução para desenvolvedores receber do exterior.
A gente sabe que a cada dia cresce o número de devs trabalhando para empresas gringas. Por conta da pandemia e a necessidade de digitalização do trabalho, essa demanda aumentou muito.
O problema é que nem todo mundo sabe como funciona o processo de pagamento de salário, e quem já vive essa realidade sofre com a demora, a burocracia e taxas altíssimas.
Só para vocês terem uma noção, qualquer transação do exterior nos bancos tradicionais leva de 3 a 5 dias úteis. Além disso, o custo por transação varia entre 5 a 11% sobre o pagamento. É caro demais!
Porém, já existe uma forma mais fácil e econômica de efetuar qualquer tipo de remessa internacional. É por isso que abrimos este tópico!
A plataforma da REMESSA ONLINE soluciona tudo isso. Ela ajuda você a enviar/receber dinheiro de forma ágil e segura.
A ideia nasceu em 2016 e já facilitou a vida de mais de 350 mil pessoas. Além de ser 100% digital, o pagamento cai em até 1 dia útil e o custo por transação a partir de 1,3%. Sem burocracia e sem letras miúdas.
Veja o que a Remessa também pode fazer por você:
• Investir no exterior;
• Pagar cursos de fora;
• Horário de atendimento estendido, das 9h às 20h;
• Atendimento multicanal (telefone, chat, site e WhatsApp);
• Transparência total, pois você sabe exatamente quanto vai pagar desde o momento de cadastro.
• Receber via GoogleAdsense e Twitch (se você também é streamer ou produtor de conteúdo).
É hora de desburocratizar o sistema. Nós ajudamos empresas e pessoas a fazerem transações internacionais com rapidez e inovação.
Provavelmente vocês ainda terão dúvidas sobre como funciona! Na página da Remessa vocês podem ter mais informações: https://lp.remessaonline.com.br/receba-do-exterior.
-
Por Cícero Antônio
Olá pessoal,
Desculpa se esse não for o forum correto pra esse tópico.
Preciso configurar meu site de HTTP para o HTTPS e atualmente utilizo o seguinte .htaccess:
RewriteEngine On RewriteCond %{SCRIPT_FILENAME} !-f RewriteCond %{SCRIPT_FILENAME} !-d RewriteRule ^(.*)$ index.php?url=$1
Minha dúvida é que preciso configurar essas diretrizes, mantendo na url amigável o apontamento para a variável URL com o certificado SSL.
Na internet encontrei tutorias que configuraram no modo geral, e não apontando para uma variável que será tratada com o GET.
Alguém poderia me orientar?
-
Por Wallcrawler
Olá pessoal tudo bem? Estou tentando fazer a cópia de uma imagem que está disponível na web e salvar em uma pasta no meu projeto. Essa imagem está sob protocolo SSL mas navegador consegue acessá-la normalmente. Mas o meu script php é bloqueado, e não entendo o porquê.
Segue o código que estou usando:
<?php //error_reporting(E_ALL ^ E_DEPRECATED); //ini_set('display_errors', 1); //die('Script travado!'); $start = microtime(true); set_time_limit(0); function save_image($inPath,$outPath) { //Download images from remote server $in = fopen($inPath, 'rb'); $out = fopen($outPath, 'wb'); while ($chunk = fread($in,8192)) { fwrite($out, $chunk, 8192); } fclose($in); fclose($out); } include_once ($_SERVER['DOCUMENT_ROOT'] . '/grpi/include/classes/Rpi.class.php'); include_once ($_SERVER['DOCUMENT_ROOT'] . '/grpi/include/functions.class.php'); $func = new FuncoesAuxiliares(); $rpi = new Rpi(); if(!isset($_GET['num_processo'])) { $rows = $rpi->Consulta('select num_processo, classe, especificacao from processos order by num_processo ASC limit 1'); } else { $rows = $rpi->Consulta("select num_processo, classe, especificacao from processos where num_processo > '" . $_GET['num_processo'] . "' order by num_processo ASC limit 1"); } $registros = 0; $arrayInsert = array(); $qtd_caracteres_total = 14; foreach ($rows as $rs) { //$rs['num_processo'] $zeros = ''; $qtd_char_processo = strlen($rs['num_processo']); //Fill zeros for($i=0; $i < ($qtd_caracteres_total - $qtd_char_processo); $i++) { $zeros .= '0'; } echo('BR5' . $zeros . $rs['num_processo'] . '<br>'); $url = 'http://www.tmdn.org/tmview/trademark/image/BR5' . $zeros . $rs['num_processo']; //Aqui tento acessar a imagem e salvar na pasta correspondente save_image($url, __DIR__ .'/logo/' . $rs['num_processo'] . '.jpg'); //copy('https://www.tmdn.org/tmview/trademark/image/BR5' . $zeros . $rs['num_processo'], __DIR__ .'/logo/' . $rs['num_processo'] . '.jpg'); $processo = $rs['num_processo']; $registros++; } $registros = number_format($registros, 0, ',', '.'); // Display Script End time $time_end = microtime(true); //dividing with 60 will give the execution time in minutes other wise seconds $execution_time = ($time_end - $start)/60; //execution time of the script echo '<b>Total Execution Time:</b> '. $execution_time .' Mins <hr><br><br>Registros: ' . $registros . '<br><br>'; echo("<a href='down_logo.php?num_processo=" . $processo ."' target='_self'>Próxima página</a><br><br>"); ?> O erro retornado é o seguinte:
Warning: fopen(): SSL: Connection reset by peer in /home/storage/8/23/2c/euregistrogrpi/public_html/grpiv2/rpi/down_logo.php on line 10
Warning: fopen(http://www.tmdn.org/tmview/trademark/image/BR500000825642590): failed to open stream: HTTP request failed! in /home/storage/8/23/2c/euregistrogrpi/public_html/grpiv2/rpi/down_logo.php on line 10
Warning: fread() expects parameter 1 to be resource, boolean given in /home/storage/8/23/2c/euregistrogrpi/public_html/grpiv2/rpi/down_logo.php on line 12
Warning: fclose() expects parameter 1 to be resource, boolean given in /home/storage/8/23/2c/euregistrogrpi/public_html/grpiv2/rpi/down_logo.php on line 16
Só que se você tentar acessar o endereço no browser, diretamente, a imagem aparece:
https://www.tmdn.org/tmview/trademark/image/BR500000825642590
Onde posso estar errando? Obrigado pela atenção de todos.
-