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/paketo-buildpacks/php-builtin-server and
paketo-buildpacks/php-builtin-server.
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.
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 my-app --env BP_PHP_WEB_DIR="htdocs"In a project.toml
[build]
[[build.env]]
name = 'BP_PHP_WEB_DIR'
value = 'htdocs'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