Проблемы с установкой cURL на Nginx + php 7 (ubuntu 14.04)

Ошибка, которую я получаю, выглядит следующим образом:

Fatal error: Uncaught Error: Call to undefined function curl_setopt_array()

Я использую Ubuntu 14.04, с nginx + php 7.

Я пробовал следовать всем учебникам Я наткнулся на stackoverflow (askubuntu, serverfault)

Что я сделал до сих пор:

$ sudo apt-get update   
$ sudo apt-get install php7.0-curl   
Reading package lists... Done   
Building dependency tree   
Reading state information... Done   
php7.0-curl is already the newest version.   


$ php -m | grep curl   

PHP Warning:  Module 'sysvshm' already loaded in Unknown on line 0   
PHP Warning:  Module 'tokenizer' already loaded in Unknown on line 0

Глядя в phpinfo (не в консоли, в Интернете), я получаю paths:

Loaded Configuration File:  /etc/php/7.0/fpm/php.ini   
Additional .ini files parsed: ....  /etc/php/7.0/fpm/conf.d/20-curl.ini .... 

В этом php.ini я прокомментировал строку:

extension=php_curl.dll

Также:

$ ls conf.d/ | grep curl
20-curl.ini

Затем я перезапустил nginx используя:

sudo service nginx restart

и перезапустил php7, используя:

sudo service php7.0-fpm restart

Все еще не работает ... Любые идеи?

1
задан 2 November 2017 в 12:25

1 ответ

Вот как я настраиваю nginx + php + mysql + phpmyadmin в Ubuntu. Выполните следующие действия.

Подготовьтесь. Откройте терминал и обновите Ubuntu.
sudo apt-get update
Установите и запустите Nginx.
sudo apt-get install nginx
Проверьте, установлен ли он. Посетите http://localhostr. Если вы видите «Добро пожаловать в Nginx!», Значит, он был установлен. Установите mysql (вам будет предложено установить пароль для учетной записи по умолчанию, которая является root).
sudo apt-get install mysql-server mysql-clinet
Установите phpmyadmin и создайте мягкую ссылку в корневом каталоге виртуальной машины.
sudo apt-get install phpmyadmin sudo In -s /usr/share/phpmyadmin/ /var/www/****.com/ 
Звезды могут быть доменным именем вашего сайта для удобства. /var/www/****.com/ - это адрес виртуальной машины. Установите php и расширения.
sudo apt-get install php5 php5-cgi php5-mysql php5-curl php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-mhash php5-ming php5-pspell php5-recode php5-snmp php5-tidy php5-xmlrpc php5-sqlite php5-xsl
Установите spawn-fcgi (для php5 cgi).
sudo apt-get install spawn-fcgi
В Nginx, congifure spawn-fcgi (используйте nano для поиска файла и измените его.) Добавьте fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; в 在/etc/nginx/fastcgi_params
sudo sed -i '$ i fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;' /etc/nginx/fastcgi_params
Измените php.ini и установите cgi.fix_pathinfo как 1.
sudo sed -i '/cgi.fix_pathinfo=/ c cgi.fix_pathinfo=1;' /etc/php5/cgi/php.ini
Запустите fastcgi и установите загрузку. sudo /usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 5 -u www-data -g www-data -f /usr/bin/php5-cgi -P /var/run/fastcgi-php.pid Установите загрузку, чтобы добавить /usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 5 -u www-data -g www-data -f /usr/bin/php5-cgi -P /var/run/fastcgi-php.pid в /etc/rc.local sudo sed -i '/^exit/ i /usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 5 -u www-data -g www-data -f /usr/bin/php5-cgi -P /var/run/fastcgi-php.pid' /etc/rc.local Настроить виртуальную машину в Nginx (ОЧЕНЬ ВАЖНО). sudo vim /etc/nginx/sites-available/****.com Звезды могут быть любым именем, которое вы хотите. Измените сайт ****. Com .conf и добавьте
server {   
listen 80; #WordPress access port (Default 80)   
server_name ***.com www.***.com; #hostname,bind domain  
root /var/www/***.com; #root directory of site    
location / {   
index index.php;  
}   
location ~ \.php$ {   
fastcgi_pass 127.0.0.1:9000;   
fastcgi_index index.php;   
include /etc/nginx/fastcgi_params;  
}  
}  
Запустите Nginx / php
sudo /etc/init.d/nginx restart  
/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 5 /usr/bin/php-cgi

. По завершении нажмите http://localhost/phpmyadmin через http://localhost.

0
ответ дан 23 May 2018 в 03:58

Другие вопросы по тегам:

Похожие вопросы: