curl_init () não funciona quando o script php é acessado pelo navegador

3

Ubuntu 16.04.1, servidor Apache2 ... Script php simples: index.php

<?php
    echo "A";
    $ch = curl_init();
    echo "B";

A saída deve ser: AB, funciona bem no terminal

No entanto, quando abro index.php do navegador, a saída é: A

Aparentemente, ocorre um erro ... mas o script parou quando atingiu curl_init ()

    O bloco try-catch
  1. não detecta o erro
  2. o curl_error ($ ch) não ajuda porque essa linha nunca chegou

Para eliminar o motivo das permissões, Eu também tentei executar o script do terminal usando o usuário www-data, funcionando bem

O que posso fazer?

EDITAR

do apache error.log

PHP Fatal error:  Uncaught Error: Call to undefined function curl_init()
in /var/www/html/index.php:4\nStack trace:\n#0 {main}\n  thrown in
/var/www/html/index.php on line 4
    
por Grigory Ilizirov 13.01.2017 / 16:00

1 resposta

2

Você precisa instalar o php-curl package, dependendo da sua versão do PHP. Se esta é a versão padrão para o Ubuntu 16.04 - php7.0 :

sudo apt update
sudo apt install php7.0-curl
sudo phpenmod curl
sudo systemctl restart apache2.service
    
por pa4080 16.01.2017 / 11:28