Skip to content

initializ-buildpacks/php-builtin-server

 
 

Repository files navigation

Paketo Buildpack for PHP Built-in Web Server Cloud Native

The PHP Built-in Web Server Buildpack sets up and runs PHP's built-in web server to support PHP applications

The buildpack is published for consumption at gcr.io/initializ-buildpacks/php-builtin-server and initializ-buildpacks/php-builtin-server.

Behavior

This buildpack is the default web-server in the PHP buildpack, and it will pass detection as long as there is a *.php file found in the web directory. More information about how to set the web directory path is available in the "Configuration" section below. Users can declare an explicit intention to use the built-in server if the BP_PHP_SERVER environment variable is set to php-server at build-time this buildpack will participate, however since it is the default web server, the buildpack will also participate if the environment variable isn't set at all.

The buildpack will do the following:

  • At run time:
    • Contribute a start command for the PHP built-in webserver

This buildpack requires php at launch time, and will also optionally require composer-packages at launch-time if the application contains a composer.json file or the $COMPOSER environment variable is set.

Configuration

BP_PHP_WEB_DIR

The web directory or document root can be configured via the BP_PHP_WEB_DIR environment variable as a relative path under the app directory. Set the environment variables at build time either directly or through a project.toml file.

pack build flag

pack build my-app --env BP_PHP_WEB_DIR="htdocs"
[build]
  [[build.env]]
    name = 'BP_PHP_WEB_DIR'
    value = 'htdocs'

Usage

To package this buildpack for consumption:

$ ./scripts/package.sh --version <version-number>

This will create a buildpackage.cnb file under the build directory which you can use to build your app as follows: pack build <app-name> -p <path-to-app> -b build/buildpackage.cnb -b <other-buildpacks..>

To run the unit and integration tests for this buildpack:

$ ./scripts/unit.sh && ./scripts/integration.sh

About

PHP Builtin Web Server Buildpack

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 50.1%
  • Go 49.9%