Как установить расширения PHP на nginx?


Недавно я открыл для себя NginX и решил опробовать его на своем сервере. У меня работает NginX, и я могу обслуживать файлы PHP и HTML. Но теперь я хочу попробовать установить drupal. При попытке установить его и проверить требования, меня останавливает одно требование.

Расширения PHP отключены

Drupal требует, чтобы вы включили расширения PHP в следующем списке (дополнительную информацию см. на странице системных требований):

Гд

Я пытались установить gd, выполнив apt-get install php5-gd, и он говорит, что он уже установлен. Поэтому я создал файл phpinfo() и проверил, включен ли gd, но я не смог его найти. Имеет ли это отношение к NginX или PHP? Что мне сделать, чтобы исправить это?

Author: hakre, 2012-01-14

6 answers

Поскольку вы используете Nginx - это должно означать, что вы используете PHP с PHP-FPM.

После установки вам необходимо:

sudo /etc/init.d/php-fpm restart 

Или

service php5-fpm restart

В более новых версиях ubuntu

Так что PHP получит новые расширения.

 28
Author: Xeoncross, 2017-04-11 08:02:23

Для будущего меня, если я забуду это.

Если вы возились с /etc/php/fpm, возможно, вы случайно потеряли символическую ссылку на conf.d, что означает, что файлы загрузки gd и PDO не будут загружены с помощью FPM.

Это будет проблемой, если вы просто используете базовую конфигурацию, которая поставляется с PHP5-FPM. Если у вас есть собственная конфигурация, вы можете включить файлы в другое место.

Решение: Воссоздайте символьную ссылку.

cd /etc/php5/fpm
sudo ln -s /etc/php5/conf.d /etc/php5/fpm/conf.d
 3
Author: Dominic Woodman, 2013-12-08 17:42:58

Если ваш веб-сервер настроен правильно, установите только расширение php gd и перезапустите интерпретатор сценариев php и веб-сервер.

sudo apt-get install php5-gd
sudo /etc/init.d/php-fastcgi stop
sudo /etc/init.d/php-fastcgi start
sudo /etc/init.d/nginx stop
sudo /etc/init.d/nginx start

Вот отличный учебник по ЛЕМПУ http://library.linode.com/web-servers/nginx/php-fastcgi/ubuntu-10.04-lucid

 2
Author: augusto, 2012-11-26 21:14:37

Расширения PHP имеют отношение только к PHP. Ваш выбор веб-сервера (apache, nginx и т.д.) Не влияет на них. Скорее всего, вам просто нужно включить расширение gd. Если вы используете Ubuntu, проверьте папку /etc/php5/conf.d и добавьте файл gd.ini со следующей строкой:

extension=gd.so
 1
Author: Jacob Fike, 2012-01-13 23:31:44

Я столкнулся с той же проблемой, когда заставил sudo apt-get install php5-gd работать. Вывод на консоль предлагается выполнить sudo apt-get update. Просто базовое обновление всех ваших пакетов.

После обновления я запускаю sudo apt-get instal php5-gd, и он сделал для меня всю тяжелую работу, включая перезапуск php5-fpm и правильную установку всего, что между ними.

 0
Author: Your Filthy Rich Neighbor, 2015-06-11 08:19:58

Если вы используете centos 7 и не можете найти /etc/init.d/php-fpm, вы можете попробовать systemctl restart php-fpm, это сработало для меня.

 0
Author: Lee Void, 2015-07-19 04:25:56