mirror of
https://github.com/Dokploy/dokploy
synced 2025-06-26 18:27:59 +00:00
feat: initial commit
This commit is contained in:
32
middleware.ts
Normal file
32
middleware.ts
Normal file
@@ -0,0 +1,32 @@
|
||||
// middleware.ts
|
||||
import { verifyRequestOrigin } from "lucia";
|
||||
import { NextResponse } from "next/server";
|
||||
import type { NextRequest } from "next/server";
|
||||
|
||||
export async function middleware(request: NextRequest): Promise<NextResponse> {
|
||||
if (request.method === "GET") {
|
||||
return NextResponse.next();
|
||||
}
|
||||
const originHeader = request.headers.get("Origin");
|
||||
const hostHeader = request.headers.get("Host");
|
||||
|
||||
if (
|
||||
!originHeader ||
|
||||
!hostHeader ||
|
||||
!verifyRequestOrigin(originHeader, [hostHeader])
|
||||
) {
|
||||
return new NextResponse(null, {
|
||||
status: 403,
|
||||
});
|
||||
}
|
||||
return NextResponse.next();
|
||||
}
|
||||
|
||||
export const config = {
|
||||
matcher: [
|
||||
// Don't handle HMR requests for the dev server we rewrite to
|
||||
"/settings",
|
||||
"/dashboard/(.*)",
|
||||
"/invitation",
|
||||
],
|
||||
};
|
||||
Reference in New Issue
Block a user