Cloudflare Docs
Workers
Edit this page
Give us feedback
Set theme to dark (⇧+D)

Redirect

Redirect requests from one URL to another or from one set of URLs to another set.

​​ Redirect all requests to one URL

 Run Worker
export default {
async fetch(request) {
const destinationURL = "https://example.com";
const statusCode = 301;
return Response.redirect(destinationURL, statusCode);
},
};
export default {
async fetch(request): Promise<Response> {
const destinationURL = "https://example.com";
const statusCode = 301;
return Response.redirect(destinationURL, statusCode);
},
} satisfies ExportedHandler;
from js import Response
def on_fetch(request):
destinationURL = "https://example.com"
statusCode = 301
return Response.redirect(destinationURL, statusCode)

​​ Redirect requests from one domain to another

export default {
async fetch(request) {
const base = "https://example.com";
const statusCode = 301;
const url = new URL(request.url);
const { pathname, search } = url;
const destinationURL = `${base}${pathname}${search}`;
console.log(destinationURL);
return Response.redirect(destinationURL, statusCode);
},
};
export default {
async fetch(request): Promise<Response> {
const base = "https://example.com";
const statusCode = 301;
const url = new URL(request.url);
const { pathname, search } = url;
const destinationURL = `${base}${pathname}${search}`;
console.log(destinationURL);
return Response.redirect(destinationURL, statusCode);
},
} satisfies ExportedHandler;
from js import Response, URL
async def on_fetch(request):
base = "https://example.com"
statusCode = 301
url = URL.new(request.url)
destinationURL = f'{base}{url.pathname}{url.search}'
print(destinationURL)
return Response.redirect(destinationURL, statusCode)