next plugin cdn
0.1.1 (March 22, 2023)
该库是 Next.js 的一个插件,它会在构建时自动将静态资源上传到指定的 CDN,并将您的 Next.js 应用程序配置为使用指定的 CDN 前缀。这使得您可以轻松设置和优化您的资产以获得更好的性能。
目前,它支持 Google Cloud Storage,但计划将来支持其他 CDN,例如 AWS S3、Cloudflare 等! ?
使用您最喜欢的包管理器安装包:
npm install next-plugin-cdn
或者
yarn add next-plugin-cdn
为您的项目设置适当的环境变量。
在 next.config.js 中,导入插件并使用它来配置您的应用程序:
// Import the plugin and pass cdn info and credentials
// for example using env vars:
const withCDN = require ( "next-plugin-cdn" ) . default ( {
domain : process . env . NODE_ENV === "production" && process . env . CDN_DOMAIN ,
provider : process . env . CDN_PROVIDER ,
bucket : process . env . CDN_BUCKET ,
keyFilename : process . env . CDN_KEY_FILENAME ,
} ) ;
// Then just apply to your nextjs config
/** @type {import('next').NextConfig} */
const nextConfig = withCDN ( {
output : "standalone" ,
reactStrictMode : true ,
swcMinify : true ,
experimental : {
appDir : true ,
} ,
} ) ;
module . exports = nextConfig ;
现在,在构建过程中,该插件会将您的静态资产上传到指定的 CDN 并将您的 Next.js 应用程序配置为使用 CDN 前缀。 ?
withCDN 函数接受具有以下属性的对象:
domain
:您的 CDN 的域。应将其设置为 CDN_DOMAIN 环境变量的值。provider
:您正在使用的 CDN 提供商(例如,google、aws、cloudflare 等)。应将其设置为 CDN_PROVIDER 环境变量的值。bucket
:您的资产将上传到的存储桶的名称。应将其设置为 CDN_BUCKET 环境变量的值。keyFilename
:用于向 CDN 提供商进行身份验证的 JSON 密钥文件的名称。应将其设置为 CDN_KEY_FILENAME 环境变量的值。这些选项将传递给插件,然后插件负责上传资产并配置 CDN 前缀。
请继续关注更多 CDN 提供商的支持! ?
麻省理工学院许可证