- Настройка PHP
- Изменение значений переменных
- Шаблон создания конфигурационных файлов
- Применение настроек для режимов работы PHP «CGI» и «FastCGI (Apache)»
- Применение настроек для режима работы PHP «FastCGI (Nginx + PHP-FPM)»
- Применение настроек для режима работы PHP «модуль Apache»
- Первоначальная настройка PHP
- Восстановление значения переменной
- В этой статье
- Как посмотреть логи сайта (php, apache, mysql) в ISP Manager?
Настройка PHP
PHP имеет множество настроек, которые может изменить Администратор или Пользователь ispmanager. Набор значений зависит от режима работы. В режимах работы «CGI», «FastCGI (Apache)» используются пользовательские значения, в режиме «Модуль Apache» — значения, указанные администратором. Если пользователь не изменял значение параметра, то вместо пользовательского значения переменной будет использоваться значение, указанное администратором.
Режимы CGI, FastCGI (Apache), FastCGI (Nginx + PHP-FPM), LSAPI используют три уровня настроек: настройки администратора, настройки пользователя и настройки сайта. Наивысший приоритет имеют настройки сайта. Если значение параметра для сайта не было изменено, ispmanager использует настройки пользователя. Если пользователь не изменял значение параметра, то ispmanager будет использовать значение, указанное администратором.
Значения переменных выделены цветами:
- Красный — параметры, значения которых не определены в конфигурационном файле PHP и получены непосредственно от самого интерпретатора PHP.
- Зелёный — параметры, значения которых определены в глобальном конфигурационном файле PHP для администратора и в пользовательском для пользователя.
- Синий — параметры, значения которых не определены.
- Жёлтый — параметры, значения которых доступны пользователю только для чтения.
Изменение значений переменных
Чтобы изменить значение переменной:
- Под администратором перейдите в Настройки → Настройки PHP → Расширенные настройки. Под пользователем перейдите в WWW → PHP → Расширенные настройки.
Администратор определяет значения каких переменных отображаются пользователям по умолчанию. Для настройки перейдите в Настройки → Настройки PHP → Расширенные настройки, выберите переменную и нажмите Показать.
Глобальный конфигурационный файл настроек хранится в:
- CentOS: /etc/php.ini для нативной версии PHP и в /opt/ /etc/php.ini для альтернативных версий.
- Debian: для каждого режима работы PHP индивидуальный файл. /etc/php5/apache2/php.ini, /etc/php5/cgi/php.ini и/etc/php5/fpm/php.ini.
Пользовательские конфигурационные файлы хранятся в /var/www/ / /php.ini. Настройки, которые изменял пользователь, хранятся в этой же директории в конфигурационном файле изменённых параметров .php.ini.
Чтобы изменить пользовательские конфигурационные файлы вручную, отредактируйте файл php.ini и продублируйте изменения в файле /var/www/ /data/ /.php.ini.
Шаблон создания конфигурационных файлов
Файл /usr/local/mgr5/etc/templates/php.ini используется как шаблон создания пользовательских конфигурационных файлов. При создании нового пользователя настройки PHP для него изменяются в соответствии с шаблоном. По умолчанию шаблон содержит строки:
Шаблон пользовательских конфигурационных файлов
session.save_path = "$HOMEDIR/bin-tmp/" upload_tmp_dir = "$HOMEDIR/bin-tmp/" sendmail_path = /usr/sbin/sendmail -t -i -f webmaster@example.com
Применение настроек для режимов работы PHP «CGI» и «FastCGI (Apache)»
Если пользователь ispmanager сохраняет изменения настроек PHP:
- Изменённые значения переменных записываются в конфигурационный файл изменённых параметров.
- Содержимое пользовательского конфигурационного файла полностью заменяется на содержимое глобального файла.
- Значения из конфигурационного файла изменённых параметров заменяют соответствующие значения в пользовательском конфигурационном файле.
Если администратор ispmanager сохраняет изменения настроек PHP:
- Значения записываются в глобальный конфигурационный файл.
- Для каждого пользователя ispmanager:
- Содержимое пользовательского конфигурационного файла полностью заменяется на содержимое глобального файла.
- Значения из конфигурационного файла изменённых параметров пользователя заменяют соответствующие значения в пользовательском конфигурационном файле.
Применение настроек для режима работы PHP «FastCGI (Nginx + PHP-FPM)»
Если пользователь ispmanager сохраняет изменения настроек PHP, изменённые значения переменных записываются в конфигурационный файл PHP-FPM пользователя соответствующей версии PHP.
Если администратор ispmanager сохраняет изменения настроек PHP, изменённые значения переменных записываются в глобальный конфигурационный файл PHP-FPM соответствующей версии PHP.
Если настройки PHP изменены для конкретного сайта, изменённые значения переменных сохраняются в директории:
- для альтернативных версий PHP —/opt/php /etc/php-fpm.d/;
— версия PHP. Например, для PHP 5.4 конфигурационные файлы сайта находится в директории /opt/php54/etc/php-fpm.d/.
— версия PHP. Например, для PHP 7.0 конфигурационные файлы сайта находится в директории /etc/php/7.0/fpm/.
Чтобы сохранить настройки PHP для конкретного сайта, панель управления создаёт поддиректории:
/user.d — содержит конфигурационные файлы PHP с настройками пользователя;
/site.d — содержит конфигурационные файлы PHP с настройками для сайта;
/pool.d — содержит конфигурационные файлы пула PHP-FPM.
Чтобы панель управления не создавала отдельные настройки PHP-FPM для каждого сайта, добавьте в конфигурационный файл ispmanager строку:
Применение настроек для режима работы PHP «модуль Apache»
Пользователь не имеет доступа к изменению настроек PHP для этого режима.
Если администратор ispmanager сохраняет изменения настроек PHP, изменённые значения переменных записываются в глобальный конфигурационный файл модуля Apache соответствующей версии PHP.
Первоначальная настройка PHP
Чтобы упростить первоначальную настройку PHP основные параметры сгруппированы:
- Перейдите в Настройки → Настройки PHP → Расширенные настройки → Основные.
- Выберите Временную зону, которая будет использоваться по умолчанию всеми функциями даты и времени. Указывается в переменной «date.timezone».
- Укажите Время выполнения PHP-скрипта в секундах. Если за это время загрузка скрипта не происходит, его работа завершается. Указывается в переменной «max_execution_time».
- Укажите ограничение на Макс. размер запроса в МиБ. Оно определяет максимально допустимый размер данных, отправляемых методом POST. Указывается в переменной «post_max_size».
- Укажите ограничение на Макс. размер файлов в МиБ. Оно определяет максимальный размер загружаемых с помощью PHP-скриптов файлов. Указывается в переменной «upload_max_filesize».
- Укажите Лимит памяти в МиБ. Он определяет максимальный объём оперативной памяти, который может использовать PHP-скрипт. Указывается в переменной «memory_limit».
- Чтобы выводить сообщения об ошибках вместе с остальным выводом PHP-скрипта, включите опцию display_errors. Рекомендуем использовать эту опцию только для отладки скриптов и отключать её после завершения работы.
- Чтобы ispmanager вёл журнал работы PHP-скриптов, включите опцию log_errors. Настройте список ошибок, записываемых в журнал. Для этого включите опцию Вывод всех ошибок и в поле Выбор флагов для игнорирования при выводе ошибок выберите исключения, которые не будут записываться.
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT.
E_ALL — включает вывод всех ошибок.& ~E_DEPRECATED & ~E_STRICT — исключаемые ошибки, указанные через «& ~».
Или отключите опцию Вывод всех ошибок и в поле Выбор флагов для вывода ошибок выберите ошибки, которые будут записываться в журнал.
error_reporting = E_ERROR | E_NOTIC
Восстановление значения переменной
Чтобы восстановить значение переменной под администратором:
- Нажмите Настройки → Настройки PHP → Расширенные настройки → Восстановить.
- Изменённое значение удаляется из глобального конфигурационного файла PHP.
- Для каждого пользователя ispmanager:
- Содержимое пользовательского конфигурационного файла полностью заменяется на содержимое глобального файла.
- Значения из конфигурационного файла изменённых параметров пользователя заменяют соответствующие значения в пользовательском конфигурационном файле.
Чтобы восстановить значение переменной под пользователем:
- Нажмите WWW → PHP → Расширенные настройки → Восстановить.
- Изменённое значение удаляется из пользовательского конфигурационного файла PHP.
В этой статье
Как посмотреть логи сайта (php, apache, mysql) в ISP Manager?
В Chrome Devtools Network показатель TTFB для сайта очень высокий — долгий ответ от сервера.
Но на стороне ISP system можно посмотреть только логи
.access.log и .error.log для сайта, в которых ничего не указывает на причину долгого ответа.Возможно причина в запросе к БД, в зависании какого-нибуть скрипта php.
В документации по ispmanager ничего не вижу про логи php, apache, mysql
Кроме того, что логирование самой системы находится здесь
Средний 3 комментария
wisgest, нашел в доке настройки PHP , что нужно включить опцию log_errors.
Не указано только, где будут сохраняться эти логи.
Может, тут
/var/www/user/data/logs/user.error.logЯ же написал, что там, где зададите в error_log . (И как таковой ISPmanager к вопросу имеет мало отношения.)
По этому пути хранятся логи вида:
user.access.log и user.error.log
и gz архивы этих логов. В них можно увидеть подключения и ошибки подключений, но причины долгого ответа от php или mysql там не видно.
Леонид Марков, ну я тебе и так их могу назвать.
Для этогоне нужно быть 7 пяди во лбу.
Значит смотри как все проиходит
1. зомби процессы сьедают память 10% вероятности легпо проверить по памяти.
2. вы развиваете сайт и у вас появилась более сложная логика, порой даже просто количество товаров в категории отобразили. тем самым дали тяжелые хиты в бд на подсчет товаров в каждой категории.
но оно работает.
однако уже начинает образовываться очередь при этом сильно проседает средний хит.
3. у вас увеличилась база товаров предлоежний и тд, даже +30%
4. вы не кешировали важный компонент, смотри пункт 2
5. что бует дельше. дальше очередь будет забиваться и в какой-то момент буде лавинообразное падение бд при 100% загрузки не будет ответа.
Притом в этой очереди уже будут висеть вообще левые запросы.
6. у вас на сайте импорты экспорты в этот момент сайт тормозит.Дайте название вашего сайта.
Можно уже будет более детально обговорить
Сами логи вам ничего не дадут
Как вариант можете проверить
iotop -oka