serverActions
Next.js アプリケーションにおけるサーバーアクション (Server Actions) の動作を設定するためのオプションです。
allowedOrigins
サーバーアクションを呼び出せる安全なオリジンドメインの追加リストです。Next.js はサーバーアクションリクエストのオリジンとホストドメインを比較し、CSRF攻撃を防ぐために一致することを確認します。指定されていない場合、同一オリジンのみが許可されます。
/** @type {import('next').NextConfig} */
module.exports = {
experimental: {
serverActions: {
allowedOrigins: ['my-proxy.com', '*.my-proxy.com'],
},
},
}
bodySizeLimit
デフォルトでは、サーバーアクションに送信されるリクエストボディの最大サイズは1MBに制限されています。これは大量のデータ解析によるサーバーリソースの過剰消費や潜在的なDDoS攻撃を防ぐためです。
この制限値は serverActions.bodySizeLimit
オプションで設定できます。バイト数(例: 1000
)または bytes がサポートする文字列形式(例: '500kb'
や '3mb'
)を指定できます。
/** @type {import('next').NextConfig} */
module.exports = {
experimental: {
serverActions: {
bodySizeLimit: '2mb',
},
},
}
サーバーアクションの有効化 (v13)
サーバーアクションは Next.js 14 で安定版機能となり、デフォルトで有効化されています。ただし、以前のバージョンの Next.js を使用している場合は、experimental.serverActions
を true
に設定することで有効化できます。
/** @type {import('next').NextConfig} */
const config = {
experimental: {
serverActions: true,
},
}
module.exports = config