Here are some known bugs and issues with Cloudflare Pages:
Builds and deployment
Monorepos or repositories with multiple codebases/applications currently cannot use the automatic GitHub/GitLab integration to build multiple sites from the same repository. However, can be used to upload a monorepo as separate Pages projects from your own computer.
Incremental builds are currently not supported in Cloudflare Pages.
Commits/PRs from forked repositories will not create a preview. Support for this will come in the future.
- After you have selected a GitHub/GitLab repository for your Pages application, it cannot be changed. Delete your Pages project and create a new one pointing at a different repository if you need to update it.
*.pages.devsubdomains currently cannot be changed. If you need to change your
*.pages.devsubdomain, delete your project and create a new one.
Hugo builds automatically run an old version. To run the latest version of Hugo (for example,
0.101.0), you will need to set an environment variable. Set
0.101.0or the Hugo version of your choice.
It is currently not possible to add a custom domain with
- a wildcard, for example,
- a Worker already routed on that domain.
- a wildcard, for example,
It is currently not possible to add a custom domain with a Cloudflare Access policy already enabled on that domain.
Cloudflare’s Load Balancer does not work with
Error 1000: DNS points to prohibited IPwill appear.
When adding a custom domain, the domain will not verify if Cloudflare cannot validate a request for an SSL certificate on that hostname. In order for the SSL to validate, ensure Cloudflare Access or a Cloudflare Worker is allowing requests to the validation path:
passThroughOnException()is not currently available for Advanced Mode Pages Functions (Pages Functions which use an
passThroughOnException()is not currently as resilient as it is in Workers. We currently wrap Pages Functions code in a
catchblock and fallback to calling
env.ASSETS.fetch(). This means that any critical failures (such as exceeding CPU time or exceeding memory) may still throw an error.
Enable Access on your
- Log in to .
- From Account Home, select Workers & Pages.
- In Overview, select your Pages project.
- Go to Settings > Enable access policy.
- Select Edit on the Access policy created for your preview deployments.
- In Edit, go to Overview.
- In the Subdomain field, delete the wildcard (
*) and select Save application. You may need to change the Application name at this step to avoid an error.
At this step, your
*.pages.dev domain has been secured behind Access. To resecure your preview deployments:
- Go back to your Pages project > Settings > General > and reselect Enable access policy.
- Review that two Access policies, one for your
*.pages.devdomain and one for your preview deployments (
*.<YOUR_SITE>.pages.dev), have been created.
If you have a custom domain and protected your
*.pages.dev domain behind Access, you must:
- Select Add an application > Self hosted in .
- Input an Application name and select your custom domain from the Domain dropdown menu.
- Select Next and configure your access rules to define who can reach the Access authentication page.
- Select Add application.
Delete a project with a high number of deployments
You may not be able to delete your Pages project if it has a high number (over 800) of deployments. The Cloudflare team is tracking this issue.
As a workaround, review the following steps to delete all deployments in your Pages project. After you delete your deployments, you will be able to delete your Pages project.
- Download the
delete-all-deployments.zipfile by going to the following link: .
- Extract the
- Open your terminal and
- In the
npm installto install dependencies.
- Review the following commands to decide which deletion you would like to proceed with:
$ CF_API_TOKEN=<YOUR_CF_API_TOKEN> CF_ACCOUNT_ID=<ACCOUNT_ID> CF_PAGES_PROJECT_NAME=<PROJECT_NAME> npm start
- To delete all deployments except for the live production deployment (including , for example,
$ CF_API_TOKEN=<YOUR_CF_API_TOKEN> CF_ACCOUNT_ID=<ACCOUNT_ID> CF_PAGES_PROJECT_NAME=<PROJECT_NAME> CF_DELETE_ALIASED_DEPLOYMENTS=true npm start