Stirling PDF: 自行架設全方位免費 PDF 線上工具

小蛙常常收到有要處理 PDF 的需求,像是合併、拆分、刪除其中一頁、加密 … 等,在沒有 Adobe Acrobat Pro 情況下,一般小蛙會直接使用 Mac 來處理,若是非機密性的 PDF 才敢使用線上工具處理,前陣子好友分享一套全方位免費 PDF 線上工具 Stirling PDF,重點是可以自己架設!這樣就不怕機密資料流出了,這篇文章記錄安裝設定的過程。

架設 Stirling PDF

想使用現成的可到 Stirling PDF 官網,或社群免費自架版

在得知 Stirling PDF 之後,立刻去找好朋友 ChatGPT 聊聊,得知 2 種安裝方式:(1) 直接安裝在系統上;(2) 透過 Docker 安裝。小蛙要安裝的這台主機正好有 Docker,於是使用了這個較簡單的方法。

1. 拉取 docker image

docker pull stirlingtools/stirling-pdf:latest

2. 建立所需的資料夾

mkdir -p ~/StirlingPDF/{trainingData,extraConfigs,customFiles,logs,pipeline}

3. 拉取 docker image

docker run -d \
  --name stirling-pdf \
  -p 8080:8080 \
  -v ~/StirlingPDF/trainingData:/usr/share/tessdata \
  -v ~/StirlingPDF/extraConfigs:/configs \
  -v ~/StirlingPDF/customFiles:/customFiles/ \
  -v ~/StirlingPDF/logs:/logs/ \
  -v ~/StirlingPDF/pipeline:/pipeline/ \
  -e DOCKER_ENABLE_SECURITY=false \
  -e LANGS=en_US \
  stirlingtools/stirling-pdf:latest

4. 測試

輸入 http://localhost/ 就可以看到畫面了

設定 Nginx 反向代理

小蛙的主機使用 nginx 反向代理,還需要在 nginx 設定檔中加入以下設定

server {
    listen 443 ssl;
    server_name __your_domain__;  # 替換成自己的域名

    client_max_body_size 300M;    # 上傳 PDF 的大小,可調整

    ssl_certificate         /etc/nginx/ssl/__your_cert__;
    ssl_certificate_key     /etc/nginx/ssl/__your_key__;

    location / {
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            proxy_pass http://localhost: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;
    }
}

重啟 nginx 後,就能使用上面設定的網址來訪問 Stirling PDF 囉 ~ 以後處理 PDF 簡單輕鬆又安全!幾乎所有常見的功能都有了,大推。如果不放心這個工具放在網路上會被濫用,還可以透過 使用 Cloudflare 使用 Zero Trust 原則保護特定網址 多做一層防護喔!

AP1GczOUEJBqlhNi9BTtExhiF7gtrAt76N07RC0DA2J6PH Uhad8gP wZQHANNovV2U H vvNh51BBHsfRCIl3bYOJ4rLQ 6d2Jsq RwjLv9OXBPdUPJ42WvuikCopAJSX0LXiY2tH4hWy75Z8kROI1CeJBh=w1265 h940 rw Stirling PDF: 自行架設全方位免費 PDF 線上工具

    發佈留言

    發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

    這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料