Lithium server boot script for PHP 5.4
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

li3_server: Booting Lithium from the CLI

This plugin utilizes the new HTTP server integrated in PHP 5.4 and allows you to start your app from the command line, without the need for a server like Apache or Nginx.

Note that this is highly experimental and while it works, a lot of tests in /test seem to fail.


  • PHP 5.4 as it introduces the new built-in HTTP server.
  • Lithium, of course.


The easiest way to install li3_server is through Composer.

	"require": {
		"daschl/li3_server": "master"

Alternatively, you can install it directly from GitHub:

$ cd libraries
$ git clone git://

Now you need to add it to your Lithium bootstrap file (config/bootstrap/libraries.php):



Head to the command line and run it through li3 server.

$ li3 server
Lithium Development Server
Booting: php -S localhost:8000 -t /path/to/webroot
Starting on localhost:8000...

You can also override the following settings:

  • --php: The path to your PHP binary. Defaults to php.
  • --host: The hostname to which the server will listen. Defaults to localhost.
  • --port: The port on which the server will listen. Defaults to 8000.
  • --webroot: A custom webroot. Defaults to LITHIUM_APP_PATH/webroot.
  • --router: A custom router script. Defaults to the provided one at config/router.php.

If you are still running mainly PHP 5.3 and want to experiment with the server, you can do it like this:

$ li3 server --php=/home/michael/Downloads/php-5.4.0RC6/sapi/cli/php
Lithium Development Server
Booting: /home/michael/Downloads/php-5.4.0RC6/sapi/cli/php -S localhost:8000 -t /home/michael/web/framework/app/webroot
Starting on localhost:8000...