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

Next.js 13:remotePatterns的port属性对Image组件不生效求助

Next.js Image remotePatterns 指定port: "443" 失效的原因及解决办法

问题出在Next.js remotePatterns的严格匹配逻辑上:
你的图片URL是https://not-real-url.com/wp-content/uploads/not-real-logo.png,这里没有显式带:443端口后缀;但你在配置里指定了port: "443",这就导致匹配规则和实际请求URL不吻合,所以加载失败。而当你把port设为空字符串时,相当于不限制端口,自然能匹配到默认使用443端口的HTTPS请求。

解决办法

方案一:推荐做法,省略port配置

HTTPS协议的默认端口就是443,Next.js会自动匹配不带端口的HTTPS请求,直接去掉port项即可:

module.exports = {
  reactStrictMode: true,
  experimental: {
    appDir: true,
  },
  images: {
    remotePatterns: [
      {
        protocol: "https",
        hostname: "not-real-url.com",
        pathname: "/wp-content/uploads/*",
      },
    ],
  },
};

方案二:显式带端口(不推荐)

如果一定要保留port配置,需要把图片URL改成带:443的形式,比如:

<Image
  src="https://not-real-url.com:443/wp-content/uploads/not-real-logo.png"
  width={50}
  height={50}
  alt="An image"
/>

但这种写法不符合常规HTTPS URL的使用习惯,不建议采用。

补充说明

当目标资源使用的是协议默认端口(HTTP默认80、HTTPS默认443)时,remotePatterns不需要指定port;只有当资源使用非默认端口时,才需要在配置里指定对应的port,同时URL中也要显式带上该端口。

内容的提问来源于stack exchange,提问作者Gary

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 14:10:28