小程序图片不显示,直接访问显示,头部配置问题

一、Cross-Origin-Resource-Policy 是干什么的?

它的作用只有一个:

控制:别人能不能加载你的图片、JS、CSS 等资源


二、你原来的配置(错误、导致图片不显示)

nginx

复制代码
add_header Cross-Origin-Resource-Policy **same-origin**;

意思:

只有我自己的网站,能加载自己的资源

谁不能加载?

  • 微信小程序 ❌
  • 别的域名 ❌
  • 外部网页 ❌
  • 手机端环境 ❌

结果:

小程序加载图片 → 被拦截 → ERR_BLOCKED_BY_RESPONSE


三、我让你改成的配置(正确、安全、图片正常)

nginx

复制代码
add_header Cross-Origin-Resource-Policy **cross-origin**;

意思:

允许【任何安全的外部站点】加载我的资源

谁可以加载?

  • 微信小程序 ✅
  • 你的 H5 页面 ✅
  • 外部安全域名 ✅
  • 手机端环境 ✅

结果:

小程序图片 → 正常显示 ✅


四、最关键:会不会有安全漏洞?

绝对不会!安全等级依然满分!

我给你对比:

表格

配置 效果 安全 小程序
same-origin 只允许自己 过高、太严格 ❌ 图片不显示
cross-origin 允许外部安全访问 ✅ 安全、不漏扫 ✅ 图片正常

cross-origin标准安全配置

99% 的网站、阿里云、腾讯云、小程序服务端 都用这个

不会带来任何漏洞 ,只是允许正常的外部访问

相关推荐
代码煮茶8 小时前
React 组件封装方法论 —— 以 Todo App 为例
javascript·react.js
任沫8 小时前
Agent之Function Call
javascript·人工智能·go
默_笙9 小时前
🛬 我让 AI 帮我写了一个打飞机游戏,结果 Canvas 把我整不会了
前端·javascript
梯度不陡9 小时前
AI 到底能不能从零写软件?ProgramBench 和 RepoZero 给出了两种答案
前端·javascript·面试
胡萝卜术11 小时前
滑动窗口最大值:从暴力到单调队列,层层优化全解析
前端·javascript·面试
kyriewen12 小时前
2026 年了,这 6 个 npm 包可以卸载了——浏览器原生 API 已经能替代
前端·javascript·npm
铁皮饭盒14 小时前
bun直接tsx,优雅!
javascript·后端
_柳青杨15 小时前
一文吃透 Node.js 事件循环:从原理到 Node 20+ 重大变更
javascript·后端
JieE2121 天前
LeetCode 101. 对称二叉树|JS 递归 + 迭代双解法,彻底搞懂镜像判断
javascript·算法
冬奇Lab1 天前
AI Workflow 定义的四次演进:从 Markdown 到 JS 脚本,再到分布式多 Agent
javascript·人工智能·agent