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

PDF.js Viewer部署到服务器后无法通过URL打开PDF文件求助

解决PDF.js Viewer部署到Web服务器后的URL配置问题

核心问题分析

本地XAMPP能正常运行,部署到服务器后异常,结合你提供的URL代码和示例,问题大概率出在文件名编码不规范或服务器路径/权限上。

具体修复方案

1. 修正URL的文件名编码逻辑

你的PHP代码直接输出文件名,没有对特殊字符(比如重音符号É、Ó)做标准URL编码,这会导致服务器解析路径出错。修改代码如下:

<td><a class="hrefborder" href="/web/viewer.html?file=/kotta/<?php echo urlencode($row["elsokotta"]); ?>">Open</a></td>
  • 用urlencode()函数自动处理文件名的特殊字符,替代手动编码的方式,确保兼容性。
  • 直接写/kotta/即可,浏览器会自动将其编码为%2Fkotta%2F,和你原来的写法效果一致,但可读性更强。

2. 验证文件路径与权限

  • 先测试直接访问PDF文件的URL是否能打开:比如访问http://example.com/kotta/Éneklem A Te Jóságodat - A.pdf,如果无法打开,说明:
    • 文件未正确上传到服务器的kotta文件夹下;
    • 文件/文件夹权限不足:将PDF文件权限设为644,kotta文件夹权限设为755,确保Web服务器能读取文件。

3. 检查PDF.js的路径配置

如果上述步骤无效,打开web/viewer.html,确认里面的资源路径(比如viewer.js、build/下的文件)都是相对路径,没有硬编码本地的绝对路径。本地XAMPP的路径结构和服务器一致的话,这一步通常不会出问题,但可以快速验证。

测试示例

修改后的URL示例应该为:

http://example.com/web/viewer.html?file=/kotta/%C3%89neklem%20A%20Te%20J%C3%B3s%C3%A1godat%20-%20A.pdf

和你原来的示例一致,但编码逻辑更可靠,避免因文件名变化导致的编码错误。

内容的提问来源于stack exchange,提问作者Benedek Szabó

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 14:58:29