{"id":13405910,"url":"https://github.com/heroku/heroku-buildpack-php","last_synced_at":"2026-03-17T02:16:51.232Z","repository":{"id":37549887,"uuid":"1758609","full_name":"heroku/heroku-buildpack-php","owner":"heroku","description":"Heroku's classic buildpack for PHP applications.","archived":false,"fork":false,"pushed_at":"2025-05-09T17:14:55.000Z","size":4565,"stargazers_count":812,"open_issues_count":42,"forks_count":1584,"subscribers_count":123,"default_branch":"main","last_synced_at":"2025-05-12T13:13:53.218Z","etag":null,"topics":["buildpack","heroku","heroku-languages","php"],"latest_commit_sha":null,"homepage":"https://devcenter.heroku.com/categories/php-support","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/heroku.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":"support/build/README.md","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2011-05-17T01:30:12.000Z","updated_at":"2025-05-08T16:52:04.000Z","dependencies_parsed_at":"2022-07-12T16:23:03.438Z","dependency_job_id":"260719b4-3e0f-4dee-b008-3cef8d9bacca","html_url":"https://github.com/heroku/heroku-buildpack-php","commit_stats":{"total_commits":2538,"total_committers":35,"mean_commits":72.51428571428572,"dds":"0.46020488573680063","last_synced_commit":"db3b49debbfbb6e0b19b0456abcdaf750b842023"},"previous_names":[],"tags_count":251,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/heroku%2Fheroku-buildpack-php","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/heroku%2Fheroku-buildpack-php/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/heroku%2Fheroku-buildpack-php/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/heroku%2Fheroku-buildpack-php/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/heroku","download_url":"https://codeload.github.com/heroku/heroku-buildpack-php/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253745196,"owners_count":21957319,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["buildpack","heroku","heroku-languages","php"],"created_at":"2024-07-30T19:02:15.669Z","updated_at":"2026-02-18T18:03:00.654Z","avatar_url":"https://github.com/heroku.png","language":"Shell","funding_links":[],"categories":["Shell","Buildpacks \u0026 Runtimes"],"sub_categories":[],"readme":"# Heroku buildpack: PHP [![CI](https://github.com/heroku/heroku-buildpack-php/actions/workflows/ci.yml/badge.svg)](https://github.com/heroku/heroku-buildpack-php/actions/workflows/ci.yml)\n\n![php](https://raw.githubusercontent.com/heroku/buildpacks/refs/heads/main/assets/images/buildpack-banner-php.png)\n\nThis is the official [Heroku buildpack](http://devcenter.heroku.com/articles/buildpacks) for PHP applications.\n\nIt uses Composer for dependency management, supports all recent versions of PHP as runtimes, and offers a choice of Apache2 or Nginx web servers.\n\n## Usage\n\nYou'll need to use at least an empty `composer.json` in your application.\n\n    $ echo '{}' \u003e composer.json\n    $ git add composer.json\n    $ git commit -m \"add composer.json for PHP app detection\"\n\nIf you also have files from other frameworks or languages that could trigger another buildpack to detect your application as one of its own, e.g. a `package.json` which might cause your code to be detected as a Node.js application even if it is a PHP application, then you need to manually set your application to use this buildpack:\n\n    $ heroku buildpacks:set heroku/php\n\nThis will use the officially published version. To use the default branch from GitHub instead:\n\n    $ heroku buildpacks:set https://github.com/heroku/heroku-buildpack-php\n\nPlease refer to [Dev Center](https://devcenter.heroku.com/categories/php) for further usage instructions.\n\n## Custom Platform Repositories\n\nThe buildpack uses Composer repositories to resolve platform (`php`, `ext-something`, ...) dependencies.\n\nTo use a custom Composer repository with additional or different platform packages, add the URL to its `packages.json` to the `HEROKU_PHP_PLATFORM_REPOSITORIES` config var:\n\n    $ heroku config:set HEROKU_PHP_PLATFORM_REPOSITORIES=\"https://\u003cyour-bucket-name\u003e.s3.\u003cyour-bucket-region\u003e.amazonaws.com/heroku-24-amd64/packages.json\"\n\nTo allow the use of multiple custom repositories, the config var may hold a list of multiple repository URLs, separated by a space character, in ascending order of precedence (meaning the last repository listed is handled first by Composer for package lookups).\n\n**Please note that Heroku cannot provide support for issues related to custom platform repositories and packages.**\n\n### Disabling the Default Repository\n\nIf the first entry in the list is \"`-`\" instead of a URL, the default platform repository is disabled entirely. This can be useful when testing development repositories, or to forcefully prevent the use of any packages from the default platform repository.\n\n### Repository Priorities\n\nIt is possible to control [Composer Repository Priorities](https://getcomposer.org/doc/articles/repository-priorities.md) for custom platform repositories: whether Composer should\n\n- treat a given repository as canonical;\n- exclude specific packages from a repository;\n- only allow specific packages from a repository.\n\nThese repository options (`canonical`, `exclude` and `only`) are controlled using the following query strings in the repository URL:\n\n- `composer-repository-canonical` (`true` or `false`; defaults to `true`)\n- `composer-repository-exclude` (comma-separated list of excluded package names)\n- `composer-repository-only` (comma-separated list of allowed package names)\n\nFor example, the following config var will allow only packages `ext-igbinary` and `ext-redis` from `customrepo.com`; all other packages are looked up in the default repository:\n\n    $ heroku config:set HEROKU_PHP_PLATFORM_REPOSITORIES=\"https://customrepo.com/packages.json?composer-repository-only=ext-igbinary,ext-redis\"\n\n### Building Custom Repositories\n\nFor instructions on how to build custom platform packages (and a repository to hold them), please refer to the instructions [further below](#custom-platform-packages-and-repositories).\n\n## Development\n\nThe following information only applies if you're forking and hacking on this buildpack for your own purposes.\n\n### Pull Requests\n\nPlease submit all pull requests against `develop` as the base branch.\n\n### Custom Platform Packages and Repositories\n\nPlease refer to the [README in `support/build/`](support/build/README.md) for instructions.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fheroku%2Fheroku-buildpack-php","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fheroku%2Fheroku-buildpack-php","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fheroku%2Fheroku-buildpack-php/lists"}