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

WordPress前端无法加载已生成PDF文档的问题求助

WordPress前端无法加载已生成PDF文档的问题求助

大伙好,我最近碰到个棘手的问题想请教下各位:
我自己开发了个自定义WordPress插件,之前功能都跑挺顺的,后来新增了个功能——把生成的PDF文件存在服务器上插件专属的独立文件夹里,这个文件夹我已经设置了读和执行权限。

奇怪的是,在后台读取和显示这个PDF完全没问题,但一到前端就报错:

Error Failed to load PDF document.

文件肯定是已经生成并存好的,现在就只是前端读取显示的环节出问题,有没有大佬遇到过类似情况,给点思路呀?

我用到的相关代码片段(未完成部分):

$PluginDir     = plugin_dir_

我自己初步想到的几个排查方向,也欢迎大家补充:

  • 先核对前端调用PDF的路径是否正确:后台可能用的是服务器本地绝对路径,但前端得用可通过HTTP访问的URL路径才行,比如应该用plugin_dir_url()来生成前端能访问的链接,而不是plugin_dir_path()(这个是服务器本地的文件路径,浏览器没法直接访问)。
  • 再确认下文件和文件夹的权限:虽然文件夹开了读和执行,但PDF文件本身的权限是不是web服务器用户(比如www-data)能读取?有时候服务器本地用户能读,但web进程没权限的话,前端请求就拿不到文件。
  • 检查PDF文件本身是否完整:可以把前端要访问的PDF URL复制到新标签页直接打开,看看是提示404、下载后能不能打开,以此判断是路径问题还是文件损坏。
  • 查看HTTP响应头:服务器返回的Content-Type是不是application/pdf?如果返回的是text/html或者其他类型,浏览器就没法正确识别成PDF文件。
  • 排查缓存或CDN:如果站点用了缓存插件或者CDN,会不会是缓存了旧的无效路径?试试清一下全站缓存再测试。

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.08 12:48:11