fix host/origin header validation in local explorer#12869
Merged
Conversation
🦋 Changeset detectedLatest commit: 223033c The changes in this PR will be included in the next version bump. Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Contributor
|
✅ All changesets look good |
create-cloudflare
@cloudflare/kv-asset-handler
miniflare
@cloudflare/pages-shared
@cloudflare/unenv-preset
@cloudflare/vite-plugin
@cloudflare/vitest-pool-workers
@cloudflare/workers-editor-shared
wrangler
commit: |
Contributor
|
Codeowners approval required for this PR:
Show detailed file reviewers |
1c57150 to
7ae8cbe
Compare
Co-authored-by: devin-ai-integration[bot] <158243242+devin-ai-integration[bot]@users.noreply.github.com>
NuroDev
approved these changes
Mar 13, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Previously, we were checking host/origin header in the explorer worker to ensure we only allow same-origin localhost reqs. However, if you have a
routeset (custom domain etc.), Miniflare does its best to make it look like your local dev is coming from that host, and rewrites headers etc. accordingly. This means we were incorrectly blocking requests as cross-origin when you had a route set - when the local explorer UI makes a request to the local explorer API and the origin and host headers are bothmy-site.cometc., but our allowed host lists was only localhost.Also, Wrangler's Proxy miniflare instance (the startDevWorker proxy worker) rewrites headers too, to complicate things.
Basically this PR gets the user routes, adds it to our allowed hosts lists and then everything seems to work.
I've moved the check to the entry worker since we have access to the routes there. I'm only doing this check on explorer routes, because i'm worried this could block some legit usecase i haven't thought of, but if we don't see issues after the local explorer gets use, we could consider moving this to cover all cdn-cgi routes.
A picture of a cute animal (not mandatory, but encouraged)