tangly1024 / NotionNext

使用 NextJS + Notion API 实现的,支持多种部署方案的静态博客,无需服务器、零门槛搭建网站,为Notion和所有创作者设计。 (A static blog built with NextJS and Notion API, supporting multiple deployment options. No server required, zero threshold to set up a website. Designed for Notion and all creators.)
https://tangly1024.com
MIT License
7.44k stars 10.28k forks source link

[文章图片丢失] Notion部分图片无法在网站同步显示 #1615

Open LiWill188 opened 10 months ago

LiWill188 commented 10 months ago

描述bug 其他Page都没问题,但这个Page无法同步Notion里的图片,无法实现加载。

复现步骤 打开网址:https://daxinex.com/ariticle/the_second_law_of_thermodynamics, 会出现图片无法加载的情况,其他Page都没问题,单独这个Page会有无法加载图片的情况出现。

期望的正常结果

image

截图

image

环境

补充说明 与问题相关的其它说明

LiWill188 commented 10 months ago

尝试把图片从Notion里下载下来,再重新上传就好了... 确实不知道为啥,难道是因为没有缓存上传到Notion Page里?

tangly1024 commented 10 months ago

若文章的图片是从网页复制,而非手动上传有可能会出现该问题。

根本原因:出于安全考虑,NotionNext项目只允许指定域名的图片在网页上显示,其它网站的图片链接会被屏蔽。详见代码:https://github.com/tangly1024/NotionNext/blob/56c35d2a66ed51201c9620d15097a35f434c623f/next.config.js#L35-L44

从外部复制的图片,域名前缀可能是 https://xx.pic.com/ 这是不允许显示的,但是如果图片下载下来重新上传后,图片存在Notion服务器商,此时域名前缀变为了 https://notion.so/images

jiashu1024 commented 10 months ago

我没有将图片直接通过notion里/image 上传到 notion 的图床,因为访问网站时图片加载时间太慢了。我是将图片上传到 oss,再将对象存储链接通过 notion 里/image设置成link是可行的。

buliuguyy commented 8 months ago

若文章的图片是从网页复制,而非手动上传有可能会出现该问题。

根本原因:出于安全考虑,NotionNext项目只允许指定域名的图片在网页上显示,其它网站的图片链接会被屏蔽。详见代码:

https://github.com/tangly1024/NotionNext/blob/56c35d2a66ed51201c9620d15097a35f434c623f/next.config.js#L35-L44

从外部复制的图片,域名前缀可能是 https://xx.pic.com/ 这是不允许显示的,但是如果图片下载下来重新上传后,图片存在Notion服务器商,此时域名前缀变为了 https://notion.so/images

所以理论上只需要在domains中加入不同的域名就能够避免存在其他地方的图片无法显示的问题吗? 但其实我好像在修改了之后仍然存在相同的问题,具体如下,求大佬们指点!

image image image image
buliuguyy commented 8 months ago

若文章的图片是从网页复制,而非手动上传有可能会出现该问题。 根本原因:出于安全考虑,NotionNext项目只允许指定域名的图片在网页上显示,其它网站的图片链接会被屏蔽。详见代码: https://github.com/tangly1024/NotionNext/blob/56c35d2a66ed51201c9620d15097a35f434c623f/next.config.js#L35-L44

从外部复制的图片,域名前缀可能是 https://xx.pic.com/ 这是不允许显示的,但是如果图片下载下来重新上传后,图片存在Notion服务器商,此时域名前缀变为了 https://notion.so/images

所以理论上只需要在domains中加入不同的域名就能够避免存在其他地方的图片无法显示的问题吗? 但其实我好像在修改了之后仍然存在相同的问题,具体如下,求大佬们指点! image image image image

此外,我通过Vercel进行部署,确认了fork的github项目上的修改被重新自动部署了!