即使设置了remotePatterns,Next.js 主机名也未在 next.config.js 中的图像下配置

Gio*_*gio 5 next.js

Next.JS 13.3.1 似乎没有获取我next.config.js文件的以下部分:

images: {
    remotePatterns: [
      {
        protocol: "https",
        hostname: "s3-eu-central-1.amazonaws.com",
        port: "",
        pathname: "/mycompany-data-bucket-dev/**",
      },
    ],
  },

Run Code Online (Sandbox Code Playgroud)

我收到以下错误,令人惊讶的是,它提到了与我的配置中相同的协议和主机名:

Error: Invalid src prop (https://s3-eu-central-1.amazonaws.com/mycompany-data-bucket-dev/media/images/default-female/default-female-500-500.jpg) on `next/image`, hostname "s3-eu-central-1.amazonaws.com" is not configured under images in your `next.config.js`
See more info: https://nextjs.org/docs/messages/next-image-unconfigured-host
Run Code Online (Sandbox Code Playgroud)

我重新启动了本地开发服务器并仔细检查了错误消息。我的应用程序在本地运行localhost:3000

我怎样才能进一步调查这个问题?例如,是否可以在引发错误之前在运行时打印我的 Next.JS 配置?

小智 2

假设现在已经太晚了,但我在 NextJS 13.4.2 中的图像也遇到了类似的问题。在我的例子中,图像链接就像“https://s3.us-east-2.amazonaws.com/assets/1fad3d7c-d5bd.jpeg”,它是通过这样的 next.config.js 配置解决的:

/** @type {import('next').NextConfig} */
const nextConfig = {
  // ...
  images: {
    remotePatterns: [{
      protocol: 'https',
      hostname: 's3.us-east-2.amazonaws.com',
      port: '',
      pathname: '/assets/**'
    }]
  },
  // ...
};

module.exports = nextConfig;
Run Code Online (Sandbox Code Playgroud)