Как перезагрузить php (напр. при обновлении php.ini). Перезагрузка интерпретатора PHP
Способ перезагрузки зависит от используемого вами SAPI, например:
- Если php установлен как модуль веб-сервера (скажем Apache), то вам нужно перезапустить сам веб-север. Например:
- Команда перезапуска Apache в Ubuntu
- Перезагрузка PHP FPM в Ubuntu
Зачем может требовать перезагрузка
Начнём с того, что для применения новых настроек, после правки файла php.ini:
- которую вы делаете руками
- или же, которая происходит автоматически при установке нового модуля ядра php в linux (например, подобной командой)
вам необходимо заставить интерпретатор перечитать настройки php.ini, которые он читает только при своём старте, а значит необходимо перезагрузить интерпретатор.
Всегда ли после изменений php.ini нужно перезагружать сервер?
Если мне надо сделать любое изменение php.ini, например добавить extension, нужно ли мне всегда перезагружать apache/nginx?
- Вопрос задан более трёх лет назад
- 3997 просмотров
2 комментария
Простой 2 комментария

Максим Федоров @Maksclub Куратор тега PHP
достаточно перезагрузить сам php, если юзаете как модуль апача, то апач нужно перезапустить
Андрей @VladimirAndreev
Максим Федоров, а апач не умеет перечитывать конфиги без остановки?
Решения вопроса 1
Системный администратор
Nginx перезагружать не нужно.
Apache нужно перезагрузить, если используется php как модуль apache, или через mod_fcgid.
Если php запускается с помощью php-fpm, перезагружать надо только его.Ответ написан более трёх лет назад
Комментировать
Нравится Комментировать
Ответы на вопрос 1Если используете связку php-fpm + nginx, то после внесения изменений в конфиг php.ini достаточно просто перезагрузить php-fpm, я так делаю:
/etc/init.d/php7.2-fpm restart
7.2 — версия Вашего PHP.Ответ написан более трёх лет назад
Комментировать
Нравится Комментировать
Ваш ответ на вопросВойдите, чтобы написать ответ

- PHP
- +2 ещё
Как вывести полное описание товара в категории Woocommerce?
- 1 подписчик
- 8 часов назад
- 17 просмотров
Как перезагрузить службу php7.0-fpm / php5.0-fpm
Я являюсь новым пользователем системы Linux и Unix. Я хочу перезагрузить или перезапустить службу PHP-fpm. Как перезапустить PHP-fpm? Как перезапустить php7.0-fpm на сервере Ubuntu Linux 16.04 LTS?
PHP-FPM — это простой и надежный менеджер процессов FastCGI для PHP. Вы можете использовать его с Apache, Nginx и другими веб-серверами. Он включает в себя множество дополнительных функций. Посмотрим, как остановить или перезапустить или перезагрузить PHP-FPM после обновления файла php.ini.
Как отредактировать файл php.ini или www.conf?
Чтобы изменить php.ini:
$ sudo vi /etc/php5/php.ini
$ sudo vi /etc/php/7.0/fpm/php.ini
Чтобы отредактировать файл конфигурации php-fpm:
$ sudo vi /etc/php/7.0/fpm/php-fpm.conf $ sudo vi /etc/php/7.0/fpm/pool.d/www.conf
После редактирования сохраните и закройте файл. Теперь вам нужно запустить команду в соответствии с версией дистрибутива Linux / Unix после редактирования файла.
Запустите php-fpm на CentOS / RHEL 7
$ sudo systemctl start php-fpm
Остановить php-fpm CentOS / RHEL 7
$ sudo systemctl stop php-fpm
Перезагрузить php-fpm CentOS / RHEL 7
$ sudo systemctl reload php-fpm
Перезапустите php-fpm CentOS / RHEL 7
$ sudo systemctl restart php-fpm
Запуск / остановка / перезапуск / перезагрузка php-fpm на CentOS / RHEL 6.x или старше
Введите следующую команду:
$ sudo service php-fpm start #
Как запустить / остановить / перезагрузить / перезапустить php5-fpm (версия php 5.x) на Ubuntu / Debian Linux
$ sudo service php5-fpm start $ sudo service php5-fpm stop $ sudo service php5-fpm restart #
ИЛИ, если вы используете дистрибутив на основе systemd, такой как Ubuntu Linux 16.04+ LTS или Debian Linux 8.x +:
$ sudo systemctl start php7.0-fpm.service $ sudo systemctl stop php5-fpm.service $ sudo systemctl restart php5-fpm.service #
Как запустить / остановить / перезагрузить php7.0-fpm (php version 7.x) на Ubuntu / Debian Linux
$ sudo service php7.0-fpmstart $ sudo service php7.0-fpm stop $ sudo service php7.0-fpm restart #
ИЛИ, если вы используете дистрибутив на основе systemd, такой как Ubuntu Linux 16.04+ LTS или Debian Linux 8.x +:
$ sudo systemctl start php7.0-fpm.service $ sudo systemctl stop php7.0-fpm.service $ sudo systemctl restart php7.0-fpm.service #
Как перезапустить php-fpm в Alpine Linux ?
# /etc/init.d/php-fpm start # /etc/init.d/php-fpm stop # /etc/init.d/php-fpm restart #
Как перезапустить php-fpm во FreeBSD unix ?
# /usr/local/etc/rc.d/php-fpm start # /usr/local/etc/rc.d/php-fpm stop # /usr/local/etc/rc.d/php-fpm reload #
ИЛИ используйте служебную команду:
# service php-fpm start # service php-fpm stop # service php-fpm restart # service php-fpm reload
Похожие статьи:
- Управляем сетью в Centos 7, работа с сетью в centos 7
- PHP Неустранимая ошибка: вызов неопределенной функции gzinflate ()
- Ошибка apache: Too many open files
- Как включить, перезагрузить и остановить bigbluebutton
Как переключаться между несколькими версиями PHP в Ubuntu 22.04
При работе над программным обеспечением, которое будет использоваться в разных серверах, крайне важно проверить обратную совместимость с разными версиями PHP. На данный момент, самой популярной версией PHP является 7.4. Каждый год выходит новая версия PHP. При этом одна версия PHP устаревает в конце каждого года. PHP 7.4 устареет в конце 2023 года. Это означает, что все новое программное обеспечение должно быть тщательно протестировано с более новыми версиями PHP, например PHP 8, PHP 8.1 и PHP 8.2. В то же время по разным причинам некоторые пользователи используют более старые версии PHP например. php7.0, php7.1 и даже php5.6. Будучи автором тем и плагинов WordPress, для меня очень важно не оставлять пользователей позади, поэтому мы с моей командой всегда стараемся создавать продукты с надежной обратной совместимостью. Это может потребовать дополнительных усилий, но в большинстве случаев это того стоит, если это не слишком затруднительно.
Переключение между разными версиями PHP
Я допущу что вы тестируете приложение PHP в стеке LAMP, развернутом в Ubuntu 22.04. Прежде чем переключать версии PHP, убедитесь, что у вас установлены необходимые версии php. Выполняйте в терминале следующую команду:
sudo update-alternatives --list phpЗагрузите и установите недостающие версии PHP
Пропустите этот шаг, если приведенная выше команда показывает, что у вас есть необходимая версия PHP.
Я допущу что вы хотите обновить системную версию PHP до php7.2. Если вы видите, что версия PHP, на которую вы хотите переключиться, отсутствует, загрузите и установите ее:
sudo apt install php7.2Замените php7.2 на целевую версию PHP, которую вы хотите обновить или понизить. Скорее всего, вам потребуются дополнительные модули. Если вы используете WordPress, вам, вероятно, тоже нужны следующие модули PHP:
sudo apt install php7.2-common php7.2-cli php7.2-json php7.2-xml php7.2-opcache php7.2-mysql php7.2-mbstring php7.2-zip php7.2-fpmПереключитесь на желаемую версию PHP
Используйте команду update-alternatives, чтобы установить желаемую версию PHP по умолчанию. Замените «7.2» на версию, которую вы хотите обновить (например, «8.0»):
sudo update-alternatives --set php /usr/bin/php7.2Нам нужно выполнить несколько дополнительных команд:
sudo update-alternatives --set phar /usr/bin/phar7.2
sudo update-alternatives --set phar.phar /usr/bin/phar.phar7.2
sudo update-alternatives --set phpize /usr/bin/phpize7.2
sudo update-alternatives --set php-config /usr/bin/php-config7.2Наконец, в контексте стека LAMP вам надо тоже перезапустить веб-сервер Apache:
sudo service apache2 restartТеперь проверьте изменения, выполните следующую команду:
php -vИнтеграция LAMP
В некоторых случаях приведенных выше команд недостаточно для перехода на нужную версию PHP. Иногда это происходит из-за конфликтов зависимостей, конфигурации веб-сервера, ограничений альтернатив обновления и других. В стеке LAMP я считаю хорошей практикой запускать и эти команды:
sudo a2dismod php7.4
sudo a2enmod php7.2
sudo systemctl start php7.2-fpm
sudo systemctl enable php7.2-fpm
sudo a2disconf php7.4-fpm
sudo service apache2 restartЭти команды обеспечивают не только переключение версии PHP, но и правильную интеграцию с веб-сервером Apache. Замените php7.4 вашей текущей версией PHP, а php7.2 — вашей целевой версией PHP.
Бонус: создайте сценарий оболочки (shell scripts)
Мы рассмотрели широкий спектр аспектов конфигурации и зависимостей, чтобы успешно изменить PHP на нужную версию. Наконец, я бы рекомендовал создать сценарий оболочки, который запускается один раз и вам не надо выполнять эти команды одну за другой. Откройте текстовый редактор Gedit или nano и поместите приведенные выше команды в файл с расширением .sh. После этого выполните его, запустив через терминал: ./myphpversion.sh
Мы узнали как поменить версии PHP на сервере LAMP в Ubuntu. Процесс не из лёгких, но, надеюсь, эти команды помогут вам и вашим товарищам по команде и сделают процесс разработки менее утомительным и более увлекательным.
Свежие записи
- Лучшие бесплатные темы WordPress для блогa в 2023
- Самые лучшие бесплатные темы для цифрового маркетинга WordPress 2023
- Самые лучшие бесплатные темы для новостных сайтов WordPress 2023
- Как переключаться между несколькими версиями PHP в Ubuntu 22.04
- Как настроить форматирование php кода в VS Code (WordPress Coding Standards)
