문서
App Router 사용하기
serverActions

serverActions

Next.js 애플리케이션에서 서버 액션 동작을 구성하는 옵션입니다.

allowedOrigins

서버 액션을 호출할 수 있는 추가 안전 출처 도메인 목록입니다. Next.js는 CSRF 공격을 방지하기 위해 서버 액션 요청의 출처와 호스트 도메인을 비교하여 일치하는지 확인합니다. 제공되지 않으면 동일 출처만 허용됩니다.

next.config.js
/** @type {import('next').NextConfig} */
 
module.exports = {
  experimental: {
    serverActions: {
      allowedOrigins: ["my-proxy.com", "*.my-proxy.com"],
    },
  },
};

bodySizeLimit

기본적으로 서버 액션으로 전송되는 요청 본문의 최대 크기는 1MB입니다. 이는 대량의 데이터를 파싱하는 데 과도한 서버 리소스 소비를 방지하고 잠재적인 DDoS 공격을 막기 위함입니다.

하지만 serverActions.bodySizeLimit 옵션을 사용하여 이 제한을 구성할 수 있습니다. 바이트 수나 bytes가 지원하는 문자열 형식을 사용할 수 있습니다. 예를 들어 1000, '500kb' 또는 '3mb'와 같이 사용할 수 있습니다.

next.config.js
/** @type {import('next').NextConfig} */
 
module.exports = {
  experimental: {
    serverActions: {
      bodySizeLimit: "2mb",
    },
  },
};

서버 액션 활성화하기 (v13)

서버 액션은 Next.js 14에서 안정적인 기능이 되었으며 기본적으로 활성화되어 있습니다. 하지만 이전 버전의 Next.js를 사용하고 있다면 experimental.serverActionstrue로 설정하여 활성화할 수 있습니다.

next.config.js
/** @type {import('next').NextConfig} */
const config = {
  experimental: {
    serverActions: true,
  },
};
 
module.exports = config;