Подтвердить что ты не робот

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

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

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

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

Г.Д.

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

4b9b3361

Ответ 1

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

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

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

или

service php5-fpm restart

в новых версиях ubuntu

чтобы PHP забирал новые расширения.

Ответ 2

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

Если вы столкнулись с /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

Если настройка веб-сервера в порядке, установите только расширение 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

Здесь отличный учебник LEMP http://library.linode.com/web-servers/nginx/php-fastcgi/ubuntu-10.04-lucid

Ответ 4

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

extension=gd.so

Ответ 5

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

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

Ответ 6

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