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 原則保護特定網址 多做一層防護喔!