You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Next.js应用打包后处于.next文件夹时如何访问public目录的图片?

Next.js 动态访问静态图片解决方案
  • 你执行npm run build打包Next.js应用时,构建流程只会处理构建节点已存在于public目录的资源做静态优化,后续新增到public目录的图片无需重新打包,直接通过/[图片相对public目录的路径]即可正常访问,不需要额外从.next目录寻址。
  • 只要你生产环境用next start启动服务时,保持public目录与.next目录处于同级位置,Next.js会自动处理public目录下的所有静态资源请求,无需额外配置。

如果需要调整文件夹结构,可通过修改next.config.js实现自定义静态资源路径配置:

  1. 自定义静态资源路由映射
// next.config.js
module.exports = {
  async rewrites() {
    return [
      {
        source: '/img/:path*',
        // 填写自定义图片存放目录的路径,示例为根目录下的upload文件夹
        destination: '/upload/:path*'
      }
    ]
  }
}
  1. 修改默认public目录路径(Next.js 13及以上版本支持)
// next.config.js
module.exports = {
  experimental: {
    // 将默认public目录修改为根目录下的custom-public目录
    publicDir: 'custom-public'
  }
}

若你使用Serverless平台部署(如Vercel、Netlify),平台不支持运行时修改部署包内的目录文件,建议将动态新增的图片存储到对象存储服务,直接访问CDN地址即可,不需要调整本地目录配置。

内容的提问来源于stack exchange,提问作者Mr.Guardian

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 11:36:04