PHP-FPM(8)
π PHP-FPM(8) β the manual, but make it slay π
okay bestie, gather round, because we're talking about php-fpm, aka PHP FastCGI Process Manager 'PHP-FPM', from the PHP-FPM(8) manual (section 8, the sysadmin section, obviously β main character energy). Let's get into it π«Ά
β¨ NAME β¨
php-fpm β PHP FastCGI Process Manager 'PHP-FPM'. that's the whole name. iconic, brief, no notes π
πΈ SYNOPSIS πΈ
php-fpm [options]
that's it. that's the summoning ritual. you just yell php-fpm with some options and it goes β¨
π¦ DESCRIPTION π¦
so PHP is a widely-used general-purpose scripting language that is especially suited for Web development and can be embedded into HTML β you knew that, but bestie, this is a variant of PHP. the twist?? it runs in the background as a daemon, just sitting there listening for CGI requests like a lil bouncer at the club door πͺ Output is logged to /var/log/php-fpm.log.
most options are set in the configuration file. that configuration file is /etc/php-fpm.conf. by default, php-fpm will respond to CGI requests listening on localhost http port 9000. so php-fpm expects your webserver to forward all requests for '.php' files to port 9000, and you should edit your webserver configuration file appropriately. yes, you. it's giving "the ball is in your court" π
π OPTIONS π
one bullet per option, no skips, no merges, we respect the source material in this house:
-Cβ Do not chdir to the script's directory. stay put, periodt.--php-ini path|file,-c path|fileβ Look forphp.inifile in the directory path or use the specified file. pick your fighter.--no-php-ini,-nβ Nophp.inifile will be used. raw. unbothered. no config, no problem (well, some problem, but that's the vibe you chose).--define foo[=bar],-d foo[=bar]β Define INI entry foo with value bar. on the fly, live, in real time π«-eβ Generate extended information for debugger/profiler. detective mode π--help,-hβ This help. when in doubt, ask for help. we love a self-aware queen.--info,-iβ PHP information and configuration. the whole lore dump π--modules,-mβ Show compiled in modules. roll call!! everybody say present π£--version,-vβ Version number. who are you, where did you come from.--prefix path,-pβ Specify alternative prefix path (the default is/usr).--pid file,-gβ Specify the PID file location. (yes bestie, the long form is--pidand the short one is-g. that's just how it is. no, don't question it.)--fpm-config file,-yβ Specify alternative path to FastCGI process manager configuration file (the default is/etc/php-fpm.conf).--test,-tβ Test FPM configuration file and exit. and here's the tea: if called twice (-tt), the configuration is dumped before exiting. double tap for the full reveal π--daemonize,-Dβ Force to run in background and ignore daemonize option from configuration file. config said one thing, you said another, you win.--nodaemonize,-Fβ Force to stay in foreground and ignore daemonize option from configuration file. same energy, opposite direction.--force-stderr,-Oβ Force output tostderrin nodaemonize even ifstderris not a TTY. yeah it's stubborn like that π--allow-to-run-as-root,-Rβ Allow pool to run as root (disabled by default). listen. this one is off by default for a reason, so don't go flipping it unless you truly know what you're doing, fr fr π¨
π FILES π
php-fpm.confβ The configuration file for thephp-fpmdaemon.php.iniβ The standard php configuration file.
two files, both absolutely carrying the whole operation on their backs πͺ
π SIGNAL π
Once started, php-fpm then responds to several POSIX signals. it's very emotionally available, just in a signals way:
SIGINT,SIGTERMβ immediate termination. no goodbye, just gone π¨SIGQUITβ graceful stop. a soft exit, a polite lil curtsy πSIGUSR1β re-open log file. fresh log, who dis.SIGUSR2,SIGHUPβ graceful reload of all workers + reload of fpm conf/binary. glow-up in progress, do not disturb β¨
π§ SEE ALSO π§
- The PHP-FPM website:
http://php-fpm.org - For a more or less complete description of PHP look here:
http://www.php.net/manual/ - A nice introduction to PHP by Stig Bakken can be found here:
http://www.zend.com/zend/art/intro.php
π BUGS π
You can view the list of known bugs or report any new bug you found at: https://github.com/php/php-src/issues
not me telling you to go file a bug report... but like, do it, they literally asked π«Ά
π AUTHORS π
PHP-FPM SAPI was written by Andrei Nigmatulin. The mailing-lists are highload-php-en (English) and highload-php-ru (Russian). multilingual king π
The PHP Group: Thies C. Arntzen, Stig Bakken, Andi Gutmans, Rasmus Lerdorf, Sam Ruby, Sascha Schumann, Zeev Suraski, Jim Winstead, Andrei Zmievski. a whole ensemble cast, the avengers of scripting languages π¦Έ
A List of active developers can be found here: http://www.php.net/credits.php
And last but not least PHP was developed with the help of a huge amount of contributors all around the world. the global girlies came THROUGH ππ
β VERSION INFORMATION β
This manpage describes php-fpm, version 8.3.6.
π COPYRIGHT π
Copyright Β© The PHP Group Copyright (c) 2007-2009, Andrei Nigmatulin
This source file is subject to version 3.01 of the PHP license, that is bundled with this package in the file LICENSE, and is available through the world-wide-web at the following url: https://www.php.net/license/3_01.txt
If you did not receive a copy of the PHP license and are unable to obtain it through the world-wide-web, please send a note to license@php.net so we can mail you a copy immediately.
legal bestie has entered the chat and she is very thorough π
and that's the whole page, babes. this manual comes to you from The PHP Group, dated 2024, and it's the PHP-FPM(8) page β no cap, you now know it top to bottom. go forth and daemonize responsibly β¨ππ¦
π¦ where this page comes from
- ubuntu noble: php8.3-fpm 8.3.6-0maysync1
- ubuntu noble: php8.3-fpm 8.3.6-0ubuntu0.24.04.11
- ubuntu noble: php8.3-fpm 8.3.6-0ubuntu0.24.04.13
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms