Closed
Description
Description
The current documentation for man php
(relevant parts):
php(1) Scripting Language php(1)
NAME
php - PHP Command Line Interface 'CLI'
php-cgi - PHP Common Gateway Interface 'CGI' command
SYNOPSIS
[-- snip --]
php [options] -S addr:port [-t docroot]
DESCRIPTION
[-- snip --]
PHP also contains an built-in web server for application development purpose. By using the -S option
where addr:port point to a local address and port PHP will listen to HTTP requests on that address
and port and serve files from the current working directory or the docroot passed by the -t option.
[-- snip --]
OPTIONS
[-- snip --]
--server addr:port
-S addr:port Start built-in web server on the given local address and port
--docroot docroot
-t docroot Specify the document root to be used by the built-in web server
The documentation says:
If a PHP file is given on the command line when the web server is started it is treated as a "router" script. The script is run at the start of each HTTP request. If this script returns
false
, then the requested resource is returned as-is. Otherwise the script's output is returned to the browser.
There is no mention of the router script in the man
, nor does this really specify how it interacts with -t
.
PHP Version
PHP 8.1.17
Operating System
Ubuntu 22.04.2 LTS