/Knowledge/sources/honojs__hono/llms-full/cloudflare-pages-cloudflare-pages-middleware--1f5e6e16b6a4.md
Cloudflare Pages: Cloudflare Pages Middleware - hono-docs
Cloudflare Pages: Cloudflare Pages Middleware Source evidence: /Sources/honojs hono/provenance.md Canonical citation: https://hono.dev/llms full.txt cloudfla...
Cloudflare Pages: Cloudflare Pages Middleware
Source evidence: /Sources/honojs__hono/provenance.md Canonical citation: https://hono.dev/llms-full.txt#cloudflare-pages-middleware
Summary
Cloudflare Pages uses its own middleware system that is different from Hono's middleware. You can enable it by exporting onRequest in a file named _middleware.ts like t...
Content
Cloudflare Pages uses its own middleware system that is different from Hono's middleware. You can enable it by exporting onRequest in a file named _middleware.ts like this:
// functions/_middleware.ts
export async function onRequest(pagesContext) {
console.log(`You are accessing ${pagesContext.request.url}`)
return await pagesContext.next()
}
Using handleMiddleware, you can use Hono's middleware as Cloudflare Pages middleware.
// functions/_middleware.ts
import { handleMiddleware } from 'hono/cloudflare-pages'
export const onRequest = handleMiddleware(async (c, next) => {
console.log(`You are accessing ${c.req.url}`)
await next()
})
Metadata
{
"chunk_index": 0,
"citation": "https://hono.dev/llms-full.txt#cloudflare-pages-middleware",
"coverage_role": "overview",
"qualified_title": "Hono / llms-full / Cloudflare Pages > Cloudflare Pages Middleware (1)",
"retrieved_at": "2026-07-02T05:51:01Z",
"section_index": 478,
"source_id": "/honojs/hono",
"source_type": "llms_full",
"target_label": "llms-full",
"title": "Cloudflare Pages: Cloudflare Pages Middleware",
"upstream_url": "https://hono.dev/llms-full.txt",
"version": "2026"
}