مجله ایرانیکاسرور آموزش سرور، هاست، وردپرس و شبکه پنل کاربری

راه‌اندازی BentoPDF روی سرور مجازی؛ ساخت ابزار PDF اختصاصی با پردازش محلی و حذف کامل آپلود فایل

اگر برای ادغام قراردادها، کاهش حجم فاکتورها یا استخراج صفحات PDF از سرویس‌های آنلاین استفاده می‌کنید، احتمالاً به این موضوع فکر کرده‌اید که فایل‌های حساس شما کجا ذخیره می‌شوند. بسیاری از ابزارهای PDF آنلاین،…

Amir Jabbari 📅 2 مهر 1405 ⏱ 6 دقیقه مطالعه 👁 0 بازدید 💬 0 دیدگاه

اگر برای ادغام قراردادها، کاهش حجم فاکتورها یا استخراج صفحات PDF از سرویس‌های آنلاین استفاده می‌کنید، احتمالاً به این موضوع فکر کرده‌اید که فایل‌های حساس شما کجا ذخیره می‌شوند. بسیاری از ابزارهای PDF آنلاین، فایل‌ها را روی سرورهای خود آپلود می‌کنند. اما BentoPDF یک تفاوت اساسی دارد: تمام پردازش فایل در مرورگر کاربر انجام می‌شود و هیچ داده‌ای از دستگاه خارج نمی‌شود. این یعنی می‌توانید یک ابزار PDF اختصاصی روی سرور مجازی خود داشته باشید، روی دامنه شخصی مانند pdf.yourdomain.com منتشر کنید، و کنترل کامل روی حریم خصوصی و برند خود داشته باشید.

چرا BentoPDF با ابزارهای آنلاین معمولی تفاوت دارد؟

اکثر سرویس‌های PDF آنلاین مثل iLovePDF فایل شما را دریافت می‌کنند، روی سرور خود پردازش می‌کنند و سپس لینک دانلود می‌دهند. در این فرآیند، فایل از شبکه شما خارج می‌شود و باید به سیاست حفظ حریم خصوصی آن سرویس اعتماد کنید. BentoPDF این مدل را کاملاً برعکس کرده است.

BentoPDF یک ابزار متن‌باز است که به صورت Self-Hosted اجرا می‌شود و پردازش را به سمت مرورگر کاربر منتقل می‌کند . بر اساس مستندات رسمی این پروژه، BentoPDF یک «جعبه‌ابزار PDF آزاد، متن‌باز و متمرکز بر حریم خصوصی است که کاملاً در مرورگر شما اجرا می‌شود» . این یعنی حتی اگر BentoPDF را روی سرور خودتان نصب کنید، فایل کاربر هرگز به سرور شما آپلود نمی‌شود؛ سرور فقط فایل‌های استاتیک اپلیکیشن را سرو می‌کند.

🔹 بدون آپلود فایل: هیچ داده‌ای از دستگاه کاربر خارج نمی‌شود.
🔹 بدون محدودیت تعداد: هر تعداد فایل، بدون سقف روزانه.
🔹 بدون تبلیغات: محیط تمیز و حرفه‌ای برای استفاده شخصی یا سازمانی.
🔹 بیش از ۵۰ ابزار PDF: ادغام، تقسیم، فشرده‌سازی، تبدیل، OCR و غیره .

پیش‌نیازهای سرور برای راه‌اندازی BentoPDF

خبر خوب این است که BentoPDF به منابع پردازشی سنگین روی سرور نیاز ندارد. چون بار اصلی پردازش PDF روی مرورگر کاربر است، سرور شما فقط فایل‌های استاتیک را سرو می‌کند و نقش Reverse Proxy و SSL را ایفا می‌کند. بنابراین یک سرور مجازی سبک کافی است.

منبع استفاده شخصی/تیمی استفاده عمومی
CPU ۱ هسته ۱ تا ۲ هسته
RAM ۱ گیگابایت ۲ گیگابایت
فضای ذخیره‌سازی ۱۰ تا ۲۰ گیگابایت SSD ۲۰ گیگابایت SSD
سیستم‌عامل Ubuntu 22.04 / 24.04 Ubuntu 24.04

⚠️ نکته مهم: اگر قصد استفاده از قابلیت OCR یا تبدیل فایل‌های Office را دارید، BentoPDF به SharedArrayBuffer نیاز دارد که فقط در بستر HTTPS فعال می‌شود . پس فعال‌سازی SSL در ادامه این مقاله را جدی بگیرید.

نصب Docker روی سرور مجازی

اتصال به سرور از طریق SSH:

ssh root@SERVER_IP

به‌روزرسانی سیستم و نصب Docker:

apt update && apt upgrade -y
apt install docker.io docker-compose -y
systemctl enable docker
systemctl start docker
systemctl status docker

اجرای BentoPDF با Docker Compose

طبق مستندات رسمی، BentoPDF دو نسخه ارائه می‌دهد: Self-Hosted (برای استفاده داخلی و سازمانی) و Commercial (برای انتشار عمومی) . برای اهداف این مقاله از نسخه Self-Hosted استفاده می‌کنیم.

ابتدا پوشه پروژه را بسازید:

mkdir bentopdf && cd bentopdf
nano docker-compose.yml

محتوای زیر را در فایل وارد کنید:

services:
bentopdf:
image: bentopdf/bentopdf:latest
container_name: bentopdf
restart: always
ports:
– “8080:8080”

اجرای کانتینر:

docker compose up -d
docker ps

حالا BentoPDF روی پورت 8080 در حال اجراست. برای تست، آدرس زیر را در مرورگر باز کنید:

http://SERVER_IP:8080

ابزار PDF اختصاصی خود را روی سرور مجازی ایرانیکاسرور راه‌اندازی کنید

با سرور مجازی ایران ایرانیکاسرور، منابع اختصاصی CPU و RAM، دیسک NVMe و پهنای باند پایدار در اختیار دارید. BentoPDF را روی سرور خود نصب کنید، دامنه شخصی متصل کنید و یک سرویس PDF حرفه‌ای و امن به کاربران یا تیم خود ارائه دهید. پشتیبانی ۲۴/۷ و آپ‌تایم بالا تضمین می‌کند که ابزار شما همیشه در دسترس باشد.

📞 تماس با پشتیبانی: 021-91302460 | ایرانیکاسرور

اتصال دامنه اختصاصی با Nginx

برای اینکه کاربران به جای IP از دامنه استفاده کنند، Nginx را نصب و به عنوان Reverse Proxy تنظیم می‌کنیم.

apt install nginx -y
nano /etc/nginx/sites-available/bentopdf

محتوای کانفیگ:

server {
listen 80;
server_name pdf.example.com;

location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
client_max_body_size 100M;
}
}

فعال‌سازی و ری‌استارت:

ln -s /etc/nginx/sites-available/bentopdf /etc/nginx/sites-enabled/
nginx -t
systemctl restart nginx

⚠️ نکته درباره فایل‌های .mjs: بر اساس مستندات BentoPDF، برخی سرورها MIME-Type این فایل‌ها را به درستی تنظیم نمی‌کنند و مرورگر نمی‌تواند ماژول‌های ES را اجرا کند . اگر با خطای بارگذاری مواجه شدید، این مورد را بررسی کنید.

تنظیم DNS و فعال‌سازی SSL رایگان

در پنل دامنه، یک رکورد A با نام pdf و مقدار IP سرور ایجاد کنید. پس از انتشار DNS، SSL را با Certbot فعال کنید:

apt install certbot python3-certbot-nginx -y
certbot –nginx -d pdf.example.com

پس از تأیید، سایت شما روی https://pdf.example.com در دسترس خواهد بود. نکته مهم: پورت ۸۰ باید همیشه باز بماند چون Let’s Encrypt برای تمدید خودکار گواهی، از HTTP استفاده می‌کند .

مقایسه BentoPDF با ابزارهای آنلاین رایج

ویژگی BentoPDF (Self-Hosted) سرویس‌های آنلاین
محل پردازش فایل مرورگر کاربر سرور شخص ثالث
آپلود فایل ❌ ندارد ✅ اجباری
محدودیت تعداد فایل ❌ ندارد ✅ دارد
تبلیغات ❌ ندارد ✅ دارد
برند اختصاصی ✅ قابل شخصی‌سازی ❌ برند سرویس‌دهنده
هزینه فقط هزینه سرور رایگان با محدودیت / پلن پرداختی

نکات امنیتی و بهینه‌سازی

چند توصیه عملی برای امن نگه داشتن ابزار PDF اختصاصی:

🔹 محدودیت حجم آپلود: مقدار client_max_body_size را در Nginx روی مقدار منطقی مثل ۱۰۰ مگابایت تنظیم کنید.
🔹 فایروال UFW: پورت‌های SSH، HTTP و HTTPS را باز کنید و بقیه را ببندید.
🔹 Fail2Ban: برای جلوگیری از حملات Brute-Force روی SSH نصب کنید.
🔹 بکاپ منظم: از فایل docker-compose.yml و تنظیمات Nginx نسخه پشتیبان بگیرید.
🔹 مانیتورینگ: وضعیت کانتینر را با docker logs bentopdf بررسی کنید.

اگر با خطای 502 Bad Gateway مواجه شدید، ابتدا بررسی کنید که کانتینر در حال اجرا باشد:

docker ps
docker restart bentopdf

کاربردهای عملی برای کسب‌وکارها

BentoPDF فقط یک ابزار شخصی نیست. اگر در یک سازمان یا تیم کار می‌کنید، می‌توانید:

🔹 پورتال داخلی PDF برای کارمندان راه‌اندازی کنید که بدون آپلود فایل به اینترنت، قراردادها و اسناد را مدیریت کنند.
🔹 سرویس مشتری با برند خودتان بسازید و به کاربران اجازه دهید فایل‌های حساسشان را بدون نگرانی پردازش کنند.
🔹 جریان کاری خودکار برای فشرده‌سازی و ادغام فاکتورها در فرآیندهای مالی طراحی کنید.

همچنین اگر به سرور اختصاصی برای پردازش‌های سنگین‌تر نیاز دارید، می‌توانید از سرور اختصاصی ایران ایرانیکاسرور استفاده کنید.

مشکلی در راه‌اندازی سرور یا کانفیگ دارید؟

تیم فنی ایرانیکاسرور آماده کمک به شماست. از نصب Docker و تنظیم Nginx تا رفع خطاهای SSL و امنیت سرور، در کنار شما هستیم. درخواست خود را ثبت کنید و راه‌حل را دریافت کنید.

📞 تماس با پشتیبانی: 021-91302460 | ایرانیکاسرور

جمع‌بندی

BentoPDF یک رویکرد متفاوت برای کار با PDF ارائه می‌دهد: به جای اعتماد به سرویس‌های آنلاین، پردازش را به مرورگر کاربر منتقل می‌کند و حریم خصوصی را در اولویت قرار می‌دهد. با نصب آن روی سرور مجازی و اتصال دامنه اختصاصی، یک ابزار PDF حرفه‌ای با برند خودتان خواهید داشت. نیازمندی‌های سرور سبک است، نصب با Docker ساده است، و SSL رایگان با Certbot در چند دقیقه فعال می‌شود. اگر به دنبال یک راه‌حل امن، مقیاس‌پذیر و تحت کنترل خودتان برای مدیریت PDF هستید، BentoPDF روی سرور مجازی ایرانیکاسرور یک انتخاب عملی و آینده‌دار است.

این آموزش برایت مفید بود؟ می‌توانی لینک آن را ذخیره یا برای دیگران ارسال کنی.

Amir Jabbari

نویسنده مجله ایرانیکاسرور؛ منتشرکننده آموزش‌ها و راهنماهای کاربردی در حوزه هاست، سرور، وردپرس و شبکه.

برای اجرای آموزش به زیرساخت نیاز داری؟

سرویس مرتبط را ببین؛ معرفی خدمات در این بخش کوتاه نگه داشته شده تا تمرکز اصلی صفحه روی آموزش باقی بماند.

ایرانیکاسرور
برای ادامه یادگیری

مطالب مرتبط با این آموزش

مقاله‌هایی از دسته‌بندی‌ها یا برچسب‌های مرتبط برای اینکه مسیر مطالعه‌ات قطع نشود.

گفت‌وگو درباره آموزش

دیدگاه‌ها

0 دیدگاه برای این مطلب ثبت شده است.

هنوز دیدگاهی ثبت نشده است؛ اگر سؤال یا تجربه‌ای درباره این آموزش داری، همین‌جا بنویس. پاسخ‌های مدیریت و کاربران به‌صورت مشخص از هم تفکیک می‌شوند.

دیدگاه یا سؤال خود را بنویسید

ایمیل شما منتشر نمی‌شود. فیلدهای ضروری مشخص شده‌اند.