mirror of
https://github.com/fmhy/edit.git
synced 2025-08-01 00:32:30 +10:00
feat: repell some pests
This commit is contained in:
parent
baa126c4ae
commit
6435e11ccd
14 changed files with 8065 additions and 0 deletions
31
pests-repellent/src/index.ts
Normal file
31
pests-repellent/src/index.ts
Normal file
|
@ -0,0 +1,31 @@
|
|||
export default {
|
||||
async fetch(request, env, ctx): Promise<Response> {
|
||||
const url = new URL(request.url);
|
||||
const referer = request.headers.get('referer') || '';
|
||||
const secFetchSite = request.headers.get('sec-fetch-site') || '';
|
||||
|
||||
// TODO: make this
|
||||
|
||||
// const knownFakeDomains = ["fakesite.example", "evilframe.net"]
|
||||
// const isSuspicious = knownFakeDomains.some(domain => referer.includes(domain))
|
||||
//
|
||||
if (
|
||||
// isSuspicious ||
|
||||
secFetchSite === 'cross-site'
|
||||
) {
|
||||
return Response.redirect('https://fmhy.net', 302);
|
||||
}
|
||||
|
||||
const res = await fetch(request);
|
||||
|
||||
const modifiedHeaders = new Headers(res.headers);
|
||||
modifiedHeaders.set('X-Frame-Options', 'DENY');
|
||||
modifiedHeaders.set('Content-Security-Policy', "frame-ancestors 'none'");
|
||||
|
||||
return new Response(res.body, {
|
||||
status: res.status,
|
||||
statusText: res.statusText,
|
||||
headers: modifiedHeaders,
|
||||
});
|
||||
},
|
||||
} satisfies ExportedHandler<Env>;
|
Loading…
Add table
Add a link
Reference in a new issue