Intereting Posts
как установить короткий тег (<?) в php? Использовать пространство имен php внутри функции Завершение кода Eclipse PDT + не работает вообще Сортировка запроса MySQL по широте / долготе регулярное выражение, чтобы превращать URL-адреса в ссылки, не вступая в связь с существующими ссылками в тексте laravel как перейти на другую функцию в том же контроллере Предварительно упакованный Redbean извлекает только одну (последнюю) строку Как AUTOINCREMENT, начиная с определенного количества / смещения? Удалить значения, выбранные с помощью флажка вызывающая функция внутри preg_replace, внутри функции PHP: allow_url_include Как установить адрес «От» в контактной форме PHP? Оберните div вокруг каждых четырех divs Как правильно установить часовой пояс mysql Метод (например, через скрипт bash), чтобы превратить индексы php-массива в настоящее время с использованием констант в индексы массивов с использованием одинарных кавычек?

Настроить и получить доступ к странице статуса PHP-FPM в стеке LAMP битмы

Я бы хотел увидеть страницу статуса PHP-FPM в системе стека Bitnami LAMP.

Однако, когда я пытаюсь, я получаю пустую страницу или ошибку:

Request exceeded the limit of 10 internal redirects due to probable configuration error. 

Итак, что мне нужно сделать, чтобы заставить его работать?

Solutions Collecting From Web of "Настроить и получить доступ к странице статуса PHP-FPM в стеке LAMP битмы"

На этот ответ есть две части.

Во-первых, вам нужно включить обработчик страницы состояния в конфигурации PHP-FPM, а затем вам нужно настроить Apache для маршрутизации заданного URL-адреса до этого обработчика.

Чтобы настроить PHP-FPM:

 cd /path/to/bitnami cd php/etc sudo nano php-fpm.conf 

(Или любую команду для использования вашего любимого редактора. Кроме того, вам может не понадобиться sudo, если вы установили bitnami в качестве текущего пользователя вместо использования AMI Bitnami, который оставляет этот файл с правами root.)

В файле найдите строку

 ;pm.status_path = /status 

И измените его на:

 pm.status_path = /php_fpm_status 

Сохраните файл. (В nano, CTRL-X , затем Y для подтверждения)

Затем настройте обработчик в Apache:

Найдите конфигурацию Apache для домена, который вы хотите обслуживать на странице состояния. По умолчанию я думаю, что файл – это что-то вроде /path/to/bitnami/apache2/conf/bitnami/bitnami.conf но вы, вероятно, изменили его, если у вас есть живой сервер с vhosts.

В конфигурации вам нужно добавить:

 <VirtualHost xxx> ... <LocationMatch "/php_fpm_status"> SetHandler "proxy:fcgi://www-fpm" </LocationMatch> ... </VirtualHost> 

Перезапустить вещи:

 sudo /path/to/bitnami/ctlscript.sh restart 

Затем откройте новое местоположение в веб-браузере или закрутите его:

 curl ip.add.re.ss/php_fpm_status 

И вы должны увидеть статус PHP-FPM, что-то вроде:

 pool: www process manager: ondemand start time: 21/May/2016:20:28:57 +0000 start since: 13 accepted conn: 1 listen queue: 0 max listen queue: 0 listen queue len: 0 idle processes: 0 active processes: 1 total processes: 1 max active processes: 1 max children reached: 0 slow requests: 0 

Пока все хорошо, но любой человек и его злонамеренная обезьяна теперь могут просматривать ваш статус FPM, поэтому блокирует его по IP-адресу.

Вы можете использовать любой IP-адрес (например, ваш персональный IP-адрес), следуя приведенному ниже формату. На Amazon EC2 мы также можем ограничить запрос только теми, которые происходят из собственного частного IP-адреса сервера (а не для общедоступного EIP). Так что если частный IP 10.0.0.1:

 <VirtualHost xxx> ... <LocationMatch "/php_fpm_status"> Require ip 10.0.0.1 SetHandler "proxy:fcgi://www-fpm" </LocationMatch> ... </VirtualHost> 

Перезапустите Apache, и вы все равно сможете получить доступ к статусу через командную строку, используя curl 10.0.0.1/php_fpm_status но любой удаленный запрос на URL-адрес даст 403 Forbidden ответ.

(Вы также можете защитить паролем страницу или делать другие интересные вещи, но для этого базового примера достаточно блокировки IP)

Наслаждайтесь! И если есть лучший способ сделать это, то, пожалуйста, поделитесь мудростью 🙂