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

<p>недавно я обнаружил nginx и решил попробовать его на своем сервере. у меня работает nginx, и я могу обслуживать php и html-файлы. но сейчас я хочу попробовать установить drupal. при попытке установить его и проверить требования меня останавливает одно требование. </p><blockquote> <p>расширения php отключены</p> <p>drupal требует, чтобы вы включили расширения php в следующем списке (дополнительную информацию см. на странице системных требований):</p> <p>б-г</p> </blockquote><p>я попытался установить gd с помощью <code>apt-get install php5-gd</code>, и он говорит, что он уже установлен. поэтому я создал файл <code>phpinfo()</code> и проверил, включен ли gd, и я не смог его найти. это связано с nginx или php? что мне сделать, чтобы это исправить?</p>

<p>поскольку вы используете nginx - это должно означать, что вы работаете php с php-fpm. </p><p>после установки вещей вам необходимо: </p><pre><code>sudo /etc/init.d/php-fpm restart </code></pre><p>или же </p><pre><code>service php5-fpm restart </code></pre><p>в более новых версиях ubuntu</p><p>так что php заберет новые расширения.</p>

<p>на будущее мне, если я забуду это. </p><p>если вы возились с <code>/etc/php/fpm</code>, то, возможно, вы случайно потеряли символическую ссылку на <code>conf.d</code>, что означает, что файлы загрузки gd и pdo не будут загружаться с fpm.</p><p>это будет проблемой, если вы просто используете базовую конфигурацию, которая поставляется с php5-fpm. если у вас есть пользовательская конфигурация, вы можете включить файлы в другом месте.</p><p>решение: воссоздайте символическую ссылку.</p><pre><code>cd /etc/php5/fpm sudo ln -s /etc/php5/conf.d /etc/php5/fpm/conf.d </code></pre>

<p>если настройки вашего веб-сервера в порядке, установите только расширение php gd и перезапустите интерпретатор сценариев php и веб-сервер.</p><pre><code>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 </code></pre><p>вот отличный учебник по lemp <a href="http://library.linode.com/web-servers/nginx/php-fastcgi/ubuntu-10.04-lucid">http://library.linode.com/web-servers/nginx/php-fastcgi/ubuntu-10.04-lucid</a> </p>

<p>расширения php имеют отношение только к php. ваш выбор веб-сервера (apache, nginx и т.д.) не влияет на них. скорее всего, вам просто нужно включить расширение gd. если вы находитесь в ubuntu, проверьте папку /etc/php5/conf.d и добавьте gd.ini со следующей строкой:</p><pre><code>extension=gd.so </code></pre>

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

<p>я столкнулся с той же проблемой, заставив <code>sudo apt-get install php5-gd</code> работать. консольный вывод предложил сделать <code>sudo apt-get update</code>. просто базовое обновление для всех ваших пакетов.</p><p>после обновления я запустил <code>sudo apt-get instal php5-gd</code>, и это сделало все для меня тяжелым, включая перезапуск php5-fpm и правильную установку всего между ними.</p>