JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 351
  • Score
    100M100P100Q100952F
  • License MIT

Start a PHP server

Package Exports

  • php-server

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (php-server) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

php-server Build Status

Start a PHP server

Uses PHP's built-in development web server (not for production use).

The Node.js process is automatically kept alive as long as the PHP server is running.

Install

$ npm install php-server

Usage

const phpServer = require('php-server');

(async () => {
    const server = await phpServer();
    console.log(`PHP server running at ${server.url}`)
})();

API

phpServer([options])

Returns an object with the following properties:

options

Type: object

port

Type: number
Default: 0

The port on which you want to access the server.

Specify 0 to use a random port.

hostname

Type: string
Default: '127.0.0.1' (Usually the same as localhost)

The hostname the server will use.

Use '0.0.0.0' if you want it to be accessible from the outside.

base

Type: string
Default: '.'

The directory the server will serve from.

open

Type: boolean | string
Default: false

Open the server URL in the browser.

Can be one of the following:

  • true: Opens the default server URL (http://${hostname}${port}).
  • A relative URL: Opens that URL in the browser. Useful when testing pages that are not the default.
env

Type: object
Default: {}

Set environment variables for the PHP process.

router

Type: string

Optionally specify the path to a router script that is run at the start of each HTTP request. If this script returns false, the requested resource is returned as-is. Otherwise, the script's output is returned to the browser.

Example router script:

<?php
// router.php
if (preg_match('/\.(?:png|jpg|jpeg|gif)$/', $_SERVER["REQUEST_URI"])) {
    return false; // Serve the requested resource as-is
} else {
    echo "<p>Thanks for using php-server :)</p>";
}
?>
binary

Type: string
Default: 'php' (The one in your $PATH)

Path to the PHP binary.

Can be useful if you have multiple versions of PHP installed.

ini

Type: string
Default: The built-in php.ini

Path to a custom php.ini config file.

directives

Type: object
Default: {}

Add custom INI directives.

  • grunt-php - Grunt plugin that uses this package

License

MIT © Sindre Sorhus