Codeblock

addEventListener('fetch', event => {
event.respondWith(handleRequest(event.request))
})

async function handleRequest(request) {
try {

const urlObject = new URL(request.url);


if (/^\/blog/.test(urlObject.pathname)) {

const SP_URL = "https://editor.subpage.app/dir/blog.yoursite.com";
const CUSTOM_URL = "yoursite.com";

let url = new URL(request.url);

url.hostname = SP_URL;

let proxyRequest = new Request(url, request);

proxyRequest.headers.set('Host', SP_URL);
proxyRequest.headers.set("X-Forwarded-Host", CUSTOM_URL);
proxyRequest.headers.set("X-Forwarded-Proto", "https");

let ip = proxyRequest.headers.get("CF-Connecting-IP");

proxyRequest.headers.set("X-Forwarded-For", ip);

return await fetch(proxyRequest);

}

} catch (error) {

return await fetch(request);
}

return await fetch(request);
}


Rate this article
great ok bad
For more questions - Contact Us
...