Не могу установить libcurl PHP на Ubuntu Linux - PullRequest
0 голосов
/ 03 мая 2010

Я пытаюсь использовать новый API Facebook и требует PHP libcurl. Я использовал

sudo apt-get install php5-curl
sudo apachectl -k restart

И это не сработало. Я получаю ту же ошибку, и страница phpinfo () ничего не говорит о libcurl.

Источник этой проблемы, вероятно, в том, что я собрал некоторые инструменты из исходного кода (apache2, php), но потом мне стало скучно, поэтому я установил множество расширений с помощью менеджера пакетов. Но я не совсем понимаю, как диагностировать точку отказа.

Установка apt-get для curl определенно сработала и может быть найдена в

/ USR / Библиотека / php5 / 20060613 / curl.so

Я думаю, что во многом моя неразбериха связана с незнанием того, какие файлы куда, и для чего они предназначены. Буду признателен за любую помощь, и, пожалуйста, скажите мне, если мне нужно предоставить больше информации.

редактирование: Конкретная ошибка, которую я получаю:

Exception: Facebook needs the CURL PHP extension.

из строки

if (!function_exists('curl_init')) {
  throw new Exception('Facebook needs the CURL PHP extension.');
}

Ubuntu: 9.10

PHP: 5.2.13

Загруженный файл конфигурации: /etc/php5/apache2/php.ini

Ответы [ 4 ]

1 голос
/ 03 апреля 2012

Чтобы проверить, установлен ли php-curl, выполните следующие действия:

  1. Создайте файл на вашем веб-сервере (в Ubuntu он будет находиться в папке / var / www), назовите его info.php
  2. Откройте этот файл и введите следующую команду:

    <?php phpinfo(); ?>
    
  3. Сохранить этот файл

  4. Откройте ваш любимый браузер и откройте этот файл (например: http://localhost/info.php)
  5. Теперь вы увидите информацию о вашей установке PHP
  6. Поиск Curl, и если вы не можете найти его, это означает, что ваш php не установлен curl.

Чтобы установить php-curl, выполните следующие действия:

  1. Откройте терминал и введите следующую команду:

    sudo apt-get install curl libcurl3 libcurl3-dev php5-curl php5-mcrypt
    
  2. После завершения откройте файл php.ini (мой находится в /etc/php5/apache2/php.ini) и добавьте эту команду: extension = curl.so

  3. Сохраните файл и перезапустите apache с помощью этой команды:

    /etc/init.d/apache2 restart
    
  4. Снова проверьте страницу информации о PHP, вы найдете установленный PHP-CURL
  5. Вот и все

Источник: http://www.ivankristianto.com/os/ubuntu/howto-install-curl-in-php-apache/379/

1 голос
/ 03 мая 2010

В общем, плохая идея смешивать и сопоставлять программное обеспечение из менеджера пакетов вашего дистрибутива с тем, что вы создали сами. Менеджер пакетов не узнает что-нибудь о том, что вы построили самостоятельно, и может запутаться.

Не только это, но кто скажет, что вещи из менеджера пакетов даже двоично совместимы с тем, что вы создали сами? Если вы все это создадите сами, то, по крайней мере, вы знаете, что все это будет совместимо.

Звучит так, будто вы должны удалить расширения и собрать их самостоятельно. Если вы не можете или не хотите этого делать, вернитесь и установите apache и друзей через менеджер пакетов, но я бы рекомендовал набраться терпения и перейти к первому варианту.

1 голос
/ 03 мая 2010

Возможно, apt не удалось правильно изменить файл php.ini для загрузки расширения curl?

Проверьте свой php.ini и посмотрите, есть ли у вас строка типа:

extension=curl.so

возможно:

extension=/usr/lib/php5/20060613/curl.so
1 голос
/ 03 мая 2010

Ответ на вопросы

Какая версия Ubuntu?

Какая версия PHP?

Как настроить Apache и PHP?

Какие ini-файлы, по словам phpinfo (), анализируются? (должно быть около вершины)

...