Всегда ли после изменений php.ini нужно перезагружать сервер?
Если мне надо сделать любое изменение php.ini, например добавить extension, нужно ли мне всегда перезагружать apache/nginx?
- Вопрос задан более трёх лет назад
- 4193 просмотра
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
- +1 ещё
Как сделать запись в mysql с проверкой на уникальность с учётом времени из поля?
- 1 подписчик
- 16 часов назад
- 85 просмотров
Как перезапустить php в ubuntu
Начиная с версии Ubuntu 16.04 (Xenial Xerus) используется PHP версии 7. Информация о PHP версии 5 (в более ранних версиях Ubuntu) находится на странице PHP5.
PHP – скриптовый язык программирования общего назначения, интенсивно применяемый для разработки веб-приложений.
Версии PHP в Ubuntu
| Ubuntu | PHP |
|---|---|
| 12.04 LTS (Precise) | 5.3 |
| 14.04 LTS (Trusty) | 5.5 |
| 15.10 (Wily) | 5.6 |
| 16.04 LTS (Xenial) | 7.0 |
| 18.04 LTS | 7.2 |
Варианты использования PHP
Интерпретатор PHP поставляется в нескольких вариантах для разных способов запуска и использования PHP :
Модуль для Apache libapache2-mod-php
php-fpm и proxy_fcgi
php-cgi и libapache2-mod-fcgid
Модуль для Apache
Установка
Для установки выполните:
sudo apt-get install libapache2-mod-php
Настройка
Файлы настройки PHP модуля для Apache располагаются в директории /etc/php/7.0/apache2 . Данная директория содержит:
conf.d — директория с настройками активных PHP -расширений;
php.ini — файл настройки PHP .
После изменения файлов настройки PHP или изменения PHP -расширений требуется перезапуск сервера Apache:
sudo service apache2 reload
Проверка работы
В директории /var/www/html (или в корне любого другого виртуального хоста) создайте файл test.php и запишите в него следующую строку:
Теперь попробуйте в своем браузере перейти на созданную страницу http://localhost/test.php. Если вы видите описание установленного PHP , значит вы все настроили правильно.
php-fpm
FPM (менеджер процессов FastCGI) является альтернативной реализацией PHP FastCGI с несколькими дополнительными возможностями, обычно используемыми для высоконагруженных сайтов.
Установка
Для установки выполните:
Если установлен libmod-php то его надо сначала выключить sudo a2dismod a2dismod php7.2.conf
sudo apt-get install php-fpm sudo a2enmod proxy_fcgi sudo a2enconf php7.2-fpm.conf
Настройка
Файлы настройки PHP в виде модуля для Apache располагаются в директории /etc/php/7.0/fpm . Данная директория содержит:
conf.d — директория с настройками активных PHP -расширений;
pool.d — директория с настройками FPM;
php-fpm.conf — файл настройки FPM;
php.ini — файл настройки PHP .
После изменения файлов настройки PHP или изменения PHP -расширений требуется перезапуск FPM:
sudo service php7.0-fpm reload sudo systemctl restart apache2
CLI
CLI (интерпретатор командной строки) предоставляет возможность разрабатывать консольные приложения на PHP .
Установка
Для установки выполните:
sudo apt-get install php-cli
Настройка
Файлы настройки CLI располагаются в директории /etc/php/7.0/cli . Данная директория содержит:
conf.d — директория с настройками активных PHP -расширений;
php.ini — файл настройки PHP .
PHP расширения
Дополнительный функционал в PHP реализован с помощью расширений. Некоторые расширения могут сразу поставляться с интерпретатором, а некоторые расширения следует устанавливать дополнительно.
Установка
Для того, чтобы подключить к PHP необходимое расширение, надо установить его. Ниже показаны примеры установки некоторых расширений.
Подключение расширения GD:
sudo apt-get install php-gd
Подключение расширения MySQL:
sudo apt-get install php-mysql
Подключение расширения Mcrypt:
sudo apt-get install php-mcrypt
Настройка
Файлы настроек доступных расширений располагаются в директории /etc/php/7.0/mods-available . У каждого варианта запуска интерпретатора существует своя директория conf.d в которой находятся символьные ссылки на активные расширения.
Установка других версий PHP
Данный способ показывает, как установить версию PHP , не входящую в стандартные репозитории вашей версии Ubuntu. Для установки используются пакеты из PPA.
1. Посмотрите список установленных пакетов PHP для удаления ненужных:
dpkg -l | grep php| awk '' |tr "\n" " "
2. Добавьте PPA в список репозиториев:
sudo add-apt-repository ppa:ondrej/php sudo apt-get update
3. Установите вашу версию PHP .
Пример установки PHP версии 5.6:
sudo apt-get install php5.6
Пример установки некоторых модулей для PHP версии 5.6:
sudo apt-get install php5.6-mbstring php5.6-mcrypt php5.6-mysql php5.6-xml
Как перезагрузить php (напр. при обновлении php.ini). Перезагрузка интерпретатора PHP
![]()
Способ перезагрузки зависит от используемого вами SAPI, например:
- Если php установлен как модуль веб-сервера (скажем Apache), то вам нужно перезапустить сам веб-север. Например:
- Команда перезапуска Apache в Ubuntu
- Перезагрузка PHP FPM в Ubuntu
Зачем может требовать перезагрузка
Начнём с того, что для применения новых настроек, после правки файла php.ini:
- которую вы делаете руками
- или же, которая происходит автоматически при установке нового модуля ядра php в linux (например, подобной командой)
вам необходимо заставить интерпретатор перечитать настройки php.ini, которые он читает только при своём старте, а значит необходимо перезагрузить интерпретатор.
Как перезагрузить службу 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