Stirling PDF 在线 PDF 工具搭建教程

Stirling PDF 是一款功能全面的开源 PDF 处理工具,提供 Web 界面进行各种 PDF 操作。它不依赖任何第三方云服务,所有文件处理都在你的服务器本地完成,充分保障文档隐私。涵盖合并、拆分、转换、压缩、OCR 识别、水印等数十种功能。本教程将在搬瓦工 VPS 上使用 Docker 部署 Stirling PDF。

一、Stirling PDF 功能列表

  • 页面操作:合并多个 PDF、拆分页面、旋转、重新排序、删除页面和提取页面。
  • 格式转换:PDF 转图片、图片转 PDF、Word/Excel/PPT 转 PDF、HTML 转 PDF、Markdown 转 PDF。
  • 安全功能:添加/移除密码保护、添加数字签名、编辑敏感信息、添加水印。
  • OCR 文字识别:对扫描版 PDF 进行文字识别,生成可搜索的 PDF。
  • 压缩优化:压缩 PDF 文件大小,优化图片质量。
  • 其他功能:修复损坏的 PDF、扁平化表单、提取图片、对比 PDF 差异等。

二、环境准备

  • 操作系统:Ubuntu 20.04+(推荐 Ubuntu 22.04)。
  • 内存:至少 1GB RAM(OCR 功能需要更多内存),推荐 2GB。
  • 磁盘:至少 5GB 可用空间(完整版含 OCR 语言包较大)。
  • Docker:已安装 Docker 和 Docker Compose(参考 Docker 安装教程)。

购买搬瓦工 VPS 请参考 全部方案,使用优惠码 NODESEEK2026 可享受 6.77% 折扣。

三、Docker 部署 Stirling PDF

3.1 创建项目目录

mkdir -p /opt/stirling-pdf && cd /opt/stirling-pdf

3.2 完整版部署(含 OCR)

cat > docker-compose.yml <<'EOF'
version: '3.8'

services:
  stirling-pdf:
    image: stirlingtools/stirling-pdf:latest
    container_name: stirling-pdf
    restart: always
    ports:
      - "8080:8080"
    environment:
      DOCKER_ENABLE_SECURITY: "false"
      INSTALL_BOOK_AND_ADVANCED_HTML_OPS: "true"
      LANGS: "zh_sim+eng"
    volumes:
      - stirling_data:/usr/share/tessdata
      - stirling_config:/configs
      - stirling_logs:/logs

volumes:
  stirling_data:
  stirling_config:
  stirling_logs:
EOF

LANGS 环境变量指定 OCR 语言包,zh_sim 为简体中文,eng 为英文。可以按需添加其他语言。

3.3 轻量版部署(不含 OCR)

如果不需要 OCR 功能,可以使用更轻量的配置:

docker run -d \
  --name stirling-pdf \
  --restart always \
  -p 8080:8080 \
  stirlingtools/stirling-pdf:latest

3.4 启动服务

docker compose up -d
docker compose logs -f stirling-pdf

首次启动需要下载 OCR 语言包,可能需要几分钟。启动后访问 http://你的服务器IP:8080 即可使用。

四、Nginx 反向代理

cat > /etc/nginx/sites-available/stirling-pdf <<'EOF'
server {
    listen 80;
    server_name pdf.example.com;

    client_max_body_size 200m;

    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}
EOF

ln -s /etc/nginx/sites-available/stirling-pdf /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx
certbot --nginx -d pdf.example.com

注意将 client_max_body_size 设置得足够大,以支持上传大型 PDF 文件。

五、功能使用详解

5.1 合并与拆分

在首页选择"Merge"功能,上传多个 PDF 文件,调整顺序后点击合并。拆分功能支持按页码范围拆分、每 N 页拆分或按书签拆分。

5.2 格式转换

支持 PDF 与多种格式的双向转换。将 PDF 转为 PNG/JPEG 图片时可以设置 DPI 分辨率。图片转 PDF 支持多图合并为一个 PDF。Office 文档(Word、Excel、PPT)转 PDF 通过 LibreOffice 引擎实现。

5.3 OCR 文字识别

上传扫描版 PDF 或图片 PDF,选择语言后执行 OCR。识别完成后生成可搜索的 PDF,可以直接复制和搜索文字内容。对于中英文混合文档,选择 zh_sim+eng 语言组合获得最佳识别效果。

5.4 安全与水印

添加密码保护防止未授权打开 PDF。添加水印功能支持文字水印和图片水印,可以调整位置、角度和透明度。清除隐私元数据功能可以移除 PDF 中的作者、创建工具等信息。

5.5 启用登录认证

如果希望限制访问,可以启用内置认证功能。修改环境变量:

DOCKER_ENABLE_SECURITY: "true"
SECURITY_INITIALLOGIN_USERNAME: "admin"
SECURITY_INITIALLOGIN_PASSWORD: "your_admin_password"

六、API 接口

Stirling PDF 提供完整的 REST API,可以通过编程方式调用 PDF 处理功能:

# 合并 PDF 示例
curl -X POST "http://pdf.example.com/api/v1/general/merge-pdfs" \
  -F "fileInput=@file1.pdf" \
  -F "fileInput=@file2.pdf" \
  -o merged.pdf

# PDF 转图片
curl -X POST "http://pdf.example.com/api/v1/convert/pdf/img" \
  -F "fileInput=@document.pdf" \
  -F "imageFormat=png" \
  -F "dpi=300" \
  -o images.zip

七、升级

cd /opt/stirling-pdf
docker compose pull
docker compose down
docker compose up -d

总结

Stirling PDF 是目前最全面的开源 PDF 处理工具,部署在自己的搬瓦工 VPS 上可以确保文档不会经过第三方服务器,保障敏感文档的安全。购买搬瓦工 VPS 请参考 全部方案,使用优惠码 NODESEEK2026 可享受 6.77% 折扣。更多部署教程请访问 搬瓦工VPS中文网

关于本站

搬瓦工VPS中文网(bwgvps.com)是非官方中文信息站,整理搬瓦工的方案、优惠和教程。我们不销售主机,不提供技术服务。

新手必读
搬瓦工优惠码

NODESEEK2026(优惠 6.77%)

购买时填入即可抵扣。