У меня Apache 2.4 настроен как mpm_prefork на сервере Ubuntu.
Бывает, что htop
я видел, что есть процессы, которые используют много ресурсов ЦП.
Как мне узнать, какой именно URL/php-скрипт этот процесс Apache запускает на моем сайте? Например:
ПИД | Процессор | Время | Пользователь | Команда | Сценарий (информация, которой у меня нет) |
---|---|---|---|---|---|
123 | 80% | 0:01:30 | www-данные | /usr/bin/apache2 -k старт | /папка-сайта/index.php/controller/function_abc |
123 | 5% | 0:02:30 | www-данные | /usr/bin/apache2 -k старт | /папка-сайта/index.php/controller_2/function_123 |
Я не могу активировать mod_status
какСНГне рекомендует использовать этот модуль.
решение1
Рекомендация не включать mod_status основана на том факте, что если он доступен, то он будет доступен на всем сервере.
Если затем вы также разрешите .htaccess
файлы (что является значением по умолчанию или большинством развертываний Apache httpd), то каждый пользователь, который может редактировать/создавать .htaccess
файлы, может включить URL статуса. В отличие от большинства директив, которые можно включить/настроить из .htaccess
файлов, область действия URL статуса не ограничивается путем к каталогу, в котором находится файл .htaccess, а раскрывает статус всего сервера и всех размещенных на нем сайтов. Это может быть серьезным риском безопасности/утечкой информации на общем сервере.
Такой риск безопасности не должен существовать.
Когда сервер не используется многими разными веб-мастерами, вместо того, чтобы полагаться на .htaccess
файлы, администраторы сервера могут загрузить все директивы в статическую конфигурацию, в httpd.conf
(и/или в фрагменты, которые включаются из подкаталогов sites-enabled и/или conf.d и т. д.).
Затем отключить все .htaccess
(установив AllowOverride none
). Это такжеулучшает производительностьКстати.
Тогда только администратор может включить URL статуса, и когда на этом URL установлены надлежащие средства контроля доступа, использование mod_status не представляет никакого риска.