SSD Nodes Learn 🎉 VPS החל מ־$5.50/חודש
מדריכים Matt Connorמאת Matt Connor · עודכן 2026-08-13

השוואת תוכנות פורומים לניהול עצמי: Discourse, Flarum

מתלבטים איזו תוכנת פורומים להתקין על ה-VPS? השוונו את Discourse, Flarum, NodeBB ו-phpBB לפי צריכת RAM, דרישות מסד נתונים, התמודדות עם ספאם ואפשרויות ייצוא נתונים.

איזו תוכנת פורומים בניהול עצמי כדאי להריץ?

בחירה בתוכנת פורומים בניהול עצמי מסתכמת כיום בארבע אפשרויות מעשיות שניתן להריץ על גבי VPS (שרת וירטואלי פרטי): Discourse, Flarum, NodeBB ו־phpBB. התוכנה Discourse היא ברירת המחדל המתאימה אם באפשרותכם להקצות לה 4 GB של RAM ויש לכם לפחות שני אנשים שמוכנים לבצע ניהול (moderation). עם 1 GB של RAM ומנהל אחד בלבד, הריצו במקום זאת את Flarum או phpBB. פורום שקט שניתן לשמור עליו נקי עדיף על פורום מתקדם יותר שאינכם מסוגלים לתחזק.

ההתקנה היא החלק הקל. כל אחת מהתוכנות הללו ניתנת להרצה בתוך אחר צהריים אחד. מה שיקבע אם הפורום עדיין יהיה קיים בעוד שנה הוא תור הדיווחים (flag queue) ונתיב הדואר, לכן קראו את הסעיפים העוסקים בניהול ובדואר אלקטרוני לפני שתקראו את רשימות התכונות.

מה פורום באמת צריך כדי לפעול?

פורום מורכב מארבעה רכיבים פעילים, ולא מרכיב אחד: תהליך יישום, מסד נתונים שחייב לשרוד מעבר לחיי התהליך, ספרייה של תמונות פרופיל וקבצים מצורפים, ונתיב תקין לשליחת דואר. היישום הוא רכיב שניתן להחלפה. מסד הנתונים אינו כזה, כיוון שכל פוסט, כל חשבון וכל הודעה פרטית מאוחסנים בתוכו. זו הסיבה שמסד הנתונים שכל פרויקט בחר הוא השורה החשובה ביותר בסעיפים להלן. הוא קובע כיצד ייראה הייצוא של הנתונים ביום שבו תרצו לעזוב.

העלות השנייה היא אנושית. הרשמה ציבורית לצד פרסום ציבורי משמעותם הרשמות של בוטים, בדרך כלל בתוך השבוע הראשון שבו הדומיין מופיע בסריקה. ניתן להגביל את כל ארבעת הרכיבים. רק אחד מהם כולל את זרימת העבודה (workflow) כחלק מליבת המערכת.

Discourse: ברירת המחדל, והעלות האמיתית

Discourse מבוססת על Ruby on Rails, עם PostgreSQL לניהול נתונים, Redis למטמון ולתורי משימות, ו־Sidekiq לביצוע עבודות ברקע. ההתקנה הנתמכת אורזת את כל הרכיבים הללו בתוך מכולת Docker אחת, שנבנית מקובץ הגדרות ב־/var/discourse/containers/app.yml. אין צורך להתקין את הרכיבים הללו באופן ידני.

wget -qO- https://raw.githubusercontent.com/discourse/discourse_docker/main/install-discourse | sudo bash

הסקריפט מתקין git ו־Docker אם הם חסרים, משכפל את discourse_docker לתוך /var/discourse, ומעביר את השליטה לאשף האינטראקטיבי discourse-setup. האשף מבקש את שם המארח (hostname), כתובת דוא"ל למנהל ופרטי SMTP (פרוטוקול העברת דואר פשוט), כותב את app.yml, ובונה את המכולה. פורטים 80 ו־443 חייבים להיות פנויים, כיוון שהמכולה מריצה שרת nginx משלה ומנפיקה עבורכם תעודת Let's Encrypt.

דרישת המינימום הרשמית היא 1 GB של RAM עם swap, בתוספת 10 GB של שטח דיסק. התייחסו לחלק של ה־swap ברצינות. סקריפט ההתקנה יוצר קובץ swap בנפח 2 GB באמצעות fallocate -l 2G /swapfile כאשר האשף מזהה צורך בכך, וה־swap הזה אינו קישוט. שיא צריכת הזיכרון אינו מתרחש בזמן שהאתר פעיל. הוא מתרחש ב־./launcher rebuild app, שמבצע הידור מחדש (recompile) לנכסי ה-JavaScript וה-CSS בתוך המכולה בכל שדרוג. בשרת עם 1 GB זיכרון ללא swap, השלב הזה נקטע באמצע, תהליך הבנייה מחדש מסתיים ללא שגיאה ברורה על המסך, ו־dmesg | tail מציג שורת Out of memory: Killed process. הקצו 2 GB כדי להריץ את המערכת בצורה תקינה, ו-4 GB ברגע שהפורום הופך לפעיל.

שדרוגים מתבצעים מתוך /admin/upgrade בדפדפן, או מה-shell:

cd /var/discourse
./launcher rebuild app

הפקודה rebuild משמידה את המכולה הפעילה, מבצעת bootstrap למכולה חדשה מתוך app.yml, ומפעילה אותה; לכן האתר מושבת למשך מספר הדקות שזה לוקח. אין דרך לעקוף זאת במבנה של מכולה בודדת. פיצול לשתי מכולות באמצעות הדוגמאות data.yml ו־web_only.yml מאפשר ל־PostgreSQL להישאר פעיל בזמן שהמכולה של ה-web נבנית מחדש, מה שהופך לכדאי ברגע שיש לכם משתמשים ששמים לב להשבתות.

ניהול תוכן (Moderation) הוא המקום שבו Discourse מצדיקה את צריכת ה-RAM שלה. חשבונות חדשים מתחילים ברמת אמון (trust level) 0 עם מגבלות נוקשות על כמות הקישורים שהם יכולים לפרסם ועל קצב הפרסום, ועולים בדרגות ככל שהם קוראים ומשתתפים. דיווחים (flags) מגיעים לתור בדיקה שמתעד מי טיפל בכל פנייה. האינטגרציות עם Akismet ו־StopForumSpam הן תוספים רשמיים. עבור כל השאר, עליכם להרכיב את הפתרון מתוספים חיצוניים.

הגירה (Migration) לתוך Discourse היא התכונה החזקה ביותר שלה. ספריית script/import_scripts/ בעץ המקור מכילה יותר משישים מייבאים, כולל phpbb3.rb, vbulletin.rb, xenforo.rb, vanilla.rb, mybb.rb, flarum_import.rb, ספריית nodebb ומייבא mbox לארכיוני רשימות תפוצה. אלו סקריפטים של Ruby שאתם מריצים בתוך המכולה מול עותק של מסד הנתונים הישן. הם איטיים, אך הם מתוחזקים היטב.

הגירה החוצה היא הצד החלש. ./launcher enter app ואחריו discourse backup יוצרים .tar.gz המכיל dump של PostgreSQL בתוספת ספריית ההעלאות. התקנת Discourse אחרת יכולה לשחזר זאת. שום כלי אחר לא קורא את הפורמט הזה, כך שעזיבת Discourse משמעותה כתיבת שאילתות SQL מול ה-dump הזה בעצמכם. ודאו שאתם יכולים לחיות עם זה לפני שאתם מייבאים 50,000 פוסטים.

Flarum: פורום PHP קל משקל

Flarum הוא יישום PHP רגיל: php-fpm מאחורי nginx או Apache, מסד נתונים MySQL או MariaDB, וקבצים על הדיסק. הדרישות המתועדות הן PHP 7.3 ומעלה עם התוספים curl, dom, fileinfo, gd, json, mbstring, openssl, pdo_mysql, tokenizer ו-zip, בתוספת MySQL 5.6 ומעלה (או 8.0.23 ומעלה) או MariaDB 10.0.5 ומעלה. גרסה Ubuntu 24.04 מגיעה עם PHP 8.3, שזה מעל לרף הנדרש.

שימו לב ל-pdo_mysql ברשימה זו. Flarum אינו תומך ב-PostgreSQL ואינו תומך ב-SQLite. אם אתם מחפשים מסד נתונים בקובץ יחיד, ראו את phpBB בהמשך.

sudo apt update
sudo apt install -y nginx mariadb-server composer php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip
sudo install -d -m 755 /srv/flarum
cd /srv/flarum
sudo COMPOSER_ALLOW_SUPERUSER=1 composer create-project flarum/flarum:^1.8.0 .
sudo chown -R www-data:www-data /srv/flarum

הפנו את שרת האינטרנט אל /srv/flarum/public, ולא אל /srv/flarum. קוד היישום, קובץ התצורה וסיסמת מסד הנתונים נמצאים כולם תיקייה אחת מעל public, לכן document root ברמה אחת גבוהה מדי יחשוף את פרטי הגישה שלכם לכל דורש. ב-Apache עליכם להגדיר גם mod_rewrite ו-AllowOverride All כדי שקובץ ה-.htaccess המצורף ייכנס לתוקף. ב-nginx עליכם לכלול את .nginx.conf המצורף בתוך בלוק ה-server שלכם. לאחר מכן גלשו לדומיין, והמתקין של Flarum יבקש את פרטי מסד הנתונים וחשבון המנהל.

גרסאות, נכון לאוגוסט 2026: גרסה 1.8.17 היא הגרסה היציבה הנוכחית, שפורסמה ביוני 2026, וגרסה 2.0 נמצאת בשלב release candidate 5. אל תקימו קהילה חדשה על גרסת ה-release candidate. כאשר גרסה 2.0 תצא, תוספים ידרשו עדכון לפני שיוכלו להיטען, וזהו שדרוג שיעלה לכם בסוף שבוע של עבודה.

טביעת הרגל של המערכת קטנה. מספר תהליכי php-fpm, צריכת זיכרון של כמה מאות MB עבור MariaDB, וקבצים סטטיים. קהילה צעירה תעבוד היטב על 1 GB.

ניהול תוכן (Moderation) הוא נקודת התורפה האמיתית. הליבה מספקת לכם דיווחים והרשאות לפי קבוצות. תורי אישור וחסימת ספאם מגיעים מתוספים, בעיקר מאוסף FriendsOfFlarum, המותקנים באמצעות composer require ומופעלים בלוח הבקרה של המנהל. זה עובד כיום. אתם מסתמכים על אקו-סיסטם קטן יותר של מתנדבים בהשוואה ל-phpBB או Discourse, ותוסף שאינו מתוחזק עלול לחסום את שדרוג הליבה הבא שלכם, כיוון ש-composer יסרב לפתור תלויות מול הגרסה החדשה.

הוצאת נתונים היא פעולה פשוטה: בצעו mysqldump למסד הנתונים והעתיקו את ספריית ה-assets. הכנסת נתונים היא משימה מורכבת יותר. Discourse מספקת flarum_import.rb עבור כיוון המעבר מ-Flarum ל-Discourse, מה שמעיד על כיוון זרימת התעבורה המקובל. ייבוא מ-phpBB ל-Flarum מתבצע באמצעות תוספי קהילה ולא על ידי כלי רשמי, לכן בצעו בדיקה על עותק לפני שתסמכו על תוסף כזה עם העותק היחיד שלכם.

NodeBB: פרסום בזמן אמת והמחיר הנלווה לכך

NodeBB מבוססת על Node.js. היא דוחפת פוסטים חדשים לדפדפנים פתוחים באמצעות WebSockets, כך ששרשור פעיל מתעדכן ללא צורך ברענון הדף. זו הסיבה לבחור בה. ה-README דורש Node.js 22 ומעלה, וכן MongoDB 5 ומעלה או Redis 7.2 ומעלה; דרייבר ל-PostgreSQL כלול בעץ המקור כאפשרות שלישית.

השימוש ב-Redis כמסד נתונים ראשי הוא המלכודת במשפט הזה. Redis מחזיקה את מערך הנתונים בזיכרון ה-RAM, לכן דרישות הזיכרון שלכם יגדלו ככל שהפורום יגדל, במקום להישאר קבועות. MongoDB או PostgreSQL שומרות את הנתונים על הדיסק ומבצעות Cache לנתונים חמים בלבד. בחרו ב-Redis רק אם אתם יודעים לנמק זאת.

החבילות ב-Ubuntu 24.04 כוללות את Node.js 18, שזה מתחת לרף המינימלי, לכן התקינו תחילה סביבת הרצה עדכנית.

curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt install -y nodejs git build-essential
sudo adduser --system --group --home /srv/nodebb nodebb
sudo -u nodebb git clone -b v4.x https://github.com/NodeBB/NodeBB.git /srv/nodebb
cd /srv/nodebb
sudo -u nodebb ./nodebb setup

./nodebb setup הוא אינטראקטיבי. הוא שואל באיזה מסד נתונים להשתמש וכיצד לגשת אליו, לאחר מכן יוצר את חשבון ה-admin ובוחר פורט, שברירת המחדל שלו היא 4567. NodeBB לא עולה עם npm start. הסקריפט ./nodebb הוא הממשק, ו-./nodebb log הוא המקום אליו מופנה הפלט.

./nodebb start הופך את התהליך ל-daemon, וזה שגוי עבור מכונה שעוברת reboot. הריצו את ה-loader תחת systemd ב-foreground במקום זאת.

[Unit]
Description=NodeBB
After=network.target

[Service]
Type=simple
User=nodebb
WorkingDirectory=/srv/nodebb
ExecStart=/usr/bin/env node loader.js --no-daemon
Restart=on-failure

[Install]
WantedBy=multi-user.target

--no-daemon הוא החלק שאנשים מפספסים. בלעדיו ה-loader מבצע fork והתהליך הראשי מסתיים, כך ש-systemctl status nodebb מדווח על היחידה כמתה בעוד ש-curl localhost:4567 עדיין מגיב, ו-systemctl stop nodebb לא עוצר דבר. מאחורי reverse proxy, יש להעביר את ה-headers של ה-websocket upgrade. אם proxy_set_header Upgrade $http_upgrade; ו-proxy_set_header Connection "upgrade"; חסרים בבלוק ה-nginx, הפורום ייטען, קונסולת הדפדפן תתמלא בבקשות socket.io שנכשלו, ופוסטים חדשים יפסיקו להופיע עד שהקורא ירענן את הדף.

הניהול (Moderation) נמצא בין Flarum ל-Discourse. יש תור דיווחים (flag queue) בלוח הניהול, הרשאות לפי קטגוריות ומערכת מוניטין. הגנה מפני ספאם מגיעה מתוספי קהילה כגון nodebb-plugin-spam-be-gone, שמחבר את Akismet ו-StopForumSpam.

גיבויים הם ידניים, ואף אחד לא מזכיר זאת עד היום שבו אתם זקוקים לאחד. ל-CLI של ./nodebb אין פקודת גיבוי. עליכם לבצע dump למסד הנתונים בעצמכם עם mongodump או pg_dump, ועליכם להעתיק את ספריית public/uploads ואת config.json לצידה. config.json מכיל את פרטי הגישה למסד הנתונים ואת כתובת ה-URL של האתר, כך ששחזור בלעדיו הוא פשוט התקנה חדשה. אין גם כלי ייבוא רשמי. nodebb-plugin-import הוא פרויקט קהילתי שלא עומד בקצב, בעוד ש-Discourse כוללת כלי ייבוא מ-NodeBB, כך שדלת היציאה שעובדת בוודאות מובילה ל-Discourse.

phpBB: האופציה הקטנה והפשוטה שעדיין עובדת

phpBB היא תוכנה ותיקה, וזהו בדיוק היתרון שלה. סדרת הגרסאות 3.3 רצה על PHP מגרסה 7.2.0 ועד 8.3 כולל, ותומכת ב-MySQL 4.1.3 ומעלה, MariaDB 5.1 ומעלה, PostgreSQL 8.3 ומעלה, SQLite 3.6.15 ומעלה, וכן ב-MS SQL Server וב-Oracle. היא דורשת תמיכה ב-json, ב-mbstring, ב-XML, וכן הפעלה של הפונקציה getimagesize().

התמיכה ב-SQLite היא הסיבה שהיא מופיעה ברשימה זו. עם SQLite, הפורום הוא בסך הכל ספריית קובצי PHP וקובץ מסד נתונים אחד. אין צורך בשרת מסד נתונים, אין מה לכוונן, ואין רכיבים נוספים לגיבוי. בשרת VPS עם 1 GB זיכרון שמריץ כבר שירותים אחרים, להבדל הזה יש משמעות. השתמשו ב-SQLite עבור קהילה קטנה, ועברו ל-MySQL כאשר נפח הפעילות עולה, שכן SQLite מבצעת כתיבות באופן סדרתי ופוסטים עלולים להמתין זה בתור של זה.

אין כאן שלב של composer ואין שימוש ב-container. התקינו שרת אינטרנט עם PHP, חלצו את הארכיון, והריצו את תוכנית ההתקנה בדפדפן. הגדרת ה-stack המלאה מוסברת ב-התקנת LAMP stack סטנדרטי על Ubuntu 24.04.

sudo apt update
sudo apt install -y apache2 php libapache2-mod-php php-mysql php-mbstring php-xml php-gd unzip

הורידו את גרסת ה-3.3 העדכנית מאתר phpbb.com, חלצו אותה לספרייה שבה ה-vhost שלכם מגיש קבצים, ולאחר מכן הגדירו את הנתיבים שאליהם תוכנית ההתקנה כותבת כניתנים לכתיבה על ידי משתמש שרת האינטרנט.

sudo chown -R www-data:www-data /srv/phpbb
sudo chmod 660 /srv/phpbb/config.php
sudo chmod -R 770 /srv/phpbb/store /srv/phpbb/cache /srv/phpbb/files /srv/phpbb/images/avatars/upload

ההוראות הרשמיות מציינות הרשאות 666 ו-777. מספרים אלו נועדו לאחסון שיתופי, שבו אין לכם שליטה על המשתמש שמריץ את PHP. ב-VPS שלכם יש לכם שליטה כזו, לכן העבירו את הבעלות ל-www-data ומנעו גישה מכל השאר. פרט אחד ב-Apache מכשיל משתמשים רבים: הגדרות ברירת המחדל של Ubuntu מאפשרות גישה רק תחת ספריית ה-root המוגדרת, לכן vhost שמצביע על /srv/phpbb דורש גם בלוק <Directory> תואם עם Require all granted, אחרת כל בקשה תחזיר שגיאת 403 Forbidden עוד לפני ההגעה ל-phpBB. סיימו את ההתקנה בדפדפן בכתובת /install/index.php, לאחר מכן החזירו את ההרשאות של config.php ל-640 ומחקו את הספרייה install/. phpBB תמשיך להציג אזהרה לגבי ספרייה זו עד שתימחק.

ספאם הוא בעיה ידועה ב-phpBB, אך ניתן לפתור אותה. טופס ההרשמה נמצא בכתובת צפויה (ucp.php?mode=register), לכן בוטים מוצאים אותו ימים ספורים לאחר שהדומיין נסרק. הפתרון היעיל נמצא בלוח הבקרה של המנהל תחת Spambot countermeasures: הגדירו את שיטת האנטי-ספאם ל-Question and Answer, וכתבו שאלה שרק מישהו מהקהילה שלכם יכול לענות עליה. פתרונות Image CAPTCHAs (מבחני טיורינג אוטומטיים) מפוענחים בקלות על ידי שירותים שגובים תשלום לפי אלף פתרונות. שאלה בנושא הייחודי של האתר שלכם אינה ניתנת לפיצוח כזה.

phpBB היא גם המקור הנתמך ביותר עבור הגירה למערכות אחרות. ה-phpbb3.rb של Discourse הוא כלי הייבוא הנפוץ ביותר במאמר זה, וקיימות עשרים שנה של תשובות בפורומי התמיכה של phpBB. יציאה מהמערכת היא mysqldump, או פשוט העתקה של קובץ ה-SQLite. מה שלא עובר בתהליך זה הוא העיצובים (styles) והתוספים (extensions) שלכם.

מדוע הודעות אימות להרשמה לפורום לעולם אינן מגיעות?

ההרשמה בכל ארבע המערכות הללו מותנית באישור באמצעות דואר אלקטרוני. אם הודעה זו אינה מגיעה, החשבון אינו מופעל, והלוגים שלכם יציגו תהליך הרשמה שפשוט נעצר. יכולת המסירה של דואר יוצא קובעת אם הפורום יתפקד כלל, לכן יש להתייחס אליה כחלק בלתי נפרד מההתקנה.

  • פורט 25 יוצא חסום כברירת מחדל אצל רוב ספקי ה-VPS, לכן שרת Postfix מקומי שמנסה לשלוח דואר ישירות לא יצליח להעביר אותו. לוג הדואר יציג connect to gmail-smtp-in.l.google.com[...]:25: Connection timed out.
  • לכתובת IP חדשה אין מוניטין כשולחת, לכן גם אם המסירה מצליחה, ההודעה תגיע לתיקיית הספאם. עבור קישור אימות, המשמעות זהה לאי-הגעה.
  • ללא רשומות SPF (sender policy framework) ו-DKIM (domainkeys identified mail) ב-DNS, ספקיות דואר גדולות ידחו את ההודעה על הסף. הודעת הדחייה של Google תיראה כ-550 5.7.26 Unauthenticated email from example.com is not accepted due to domain's DMARC policy. כיום מצופה מכל מי ששולח דואר בכמות משמעותית להגדיר גם DMARC (domain-based message authentication, reporting and conformance).

הפתרון המעשי הוא שימוש ב-relay. הגדירו את הגדרות ה-SMTP של הפורום מול ספק דואר טרנזקציוני בפורט 587, פרסמו את רשומות ה-SPF, ה-DKIM וה-DMARC שהספק מספק לכם, ובצעו את השליחה מתת-דומיין כגון mail.example.com כדי שהמוניטין של הפורום יישאר נפרד מהדואר האישי שלכם. הפעלת שרת דואר עצמאי היא אפשרית, והמדריך שרת דואר מלא בניהול עצמי על גבי VPS מכסה זאת, אך השקת פורום אינה הזמן המתאים ללמוד את מורכבות יכולת המסירה.

בצעו בדיקות לפני שאתם מכריזים על הפורום. ב-Discourse, מתוך המכולה:

cd /var/discourse
./launcher enter app
rake emails:test[you@example.com]

משימה זו בודקת את חיבור ה-SMTP ושולחת הודעה, והיא תציין את סיבת הכישלון אם פרטי ההתחברות שגויים, בדרך כלל כ-Net::SMTPAuthenticationError. ל-phpBB יש בדיקה מקבילה בלוח הבקרה תחת Client communication. עבור Flarum ו-NodeBB, הירשמו עם חשבון זמני מול תיבת דואר אמיתית אצל ספק גדול וקראו את ה-headers הגולמיים של ההודעה שהתקבלה. spf=pass ו-dkim=pass בתוך ה-header מסוג Authentication-Results הם התוצאה שאתם מחפשים.

דגש אחד עבור Discourse: החל מאוגוסט 2026, אשף ההתקנה מאפשר לדלג על הגדרת SMTP ולהשתמש ב-Discourse ID, המאפשר למשתמשים להתחבר באמצעות חשבון חיצוני במקום קישור שנשלח במייל. זה יאפשר לכם להשיק את הפורום ללא relay. עם זאת, זה לא יספק לכם הודעות התראה או איפוס סיסמה, לכן הגדירו SMTP בכל מקרה לפני שהקהילה תגדל.

כיצד מציבים את הפורום מאחורי TLS?

Flarum ו-phpBB הם מארחים וירטואליים רגילים, לכן השימוש ב-certbot בשרת האינטרנט שכבר מוגדר אצלכם מספיק. NodeBB ו-Discourse הם מקרים שונים: מדובר ביישומים המאזינים לפורטים מקומיים, ונדרש רכיב חזיתי שיבצע TLS termination (אבטחת שכבת התעבורה) וינתב לפי שם מתחם. אם הפורום חולק את השרת עם שירותים אחרים, הציבו reverse proxy אחד לפני כולם, כפי שמתואר ב-Traefik לפני מספר יישומי Docker Compose.

ברירת המחדל של Discourse היא לתפוס את פורטים 80 ו-443 בעצמו, תוך שימוש ב-Nginx פנימי ובתבנית Let's Encrypt משלו. כדי להציב אותו מאחורי proxy קיים, עליכם לערוך את app.yml, להסיר את השורה templates/web.letsencrypt.ssl.template.yml, ולשנות את הפורטים החשופים כך שה-container יאזין רק לכתובת מקומית, ולאחר מכן להריץ את ./launcher rebuild app. ביצוע פעולה זו לאחר מעשה דורש בנייה מחדש (rebuild) וכמה דקות של השבתה, לכן מומלץ להחליט על כך לפני ההתקנה ולא אחריה.

איזה פורום מתאים לגודל הקהילה שלך?

כלל ההחלטה מתמקד באנשים, לא בתכונות.

  • מתחת לכמה מאות חברים, מנהל אחד, ו-1 GB של RAM: השתמשו ב-phpBB על SQLite, או ב-Flarum אם אתם מעדיפים ממשק מודרני ויכולים להריץ MariaDB. כל אחד מהם הוא יישום PHP בודד שדורש עדכוני אבטחה.
  • קהילה צומחת, שני מנהלים או יותר, ו-4 GB של RAM: השתמשו ב-Discourse. רמות אמון ותור הבדיקה מצדיקים את צריכת המשאבים ברגע שניהול התוכן הופך למורכב מכדי שאדם אחד ינהל אותו בראשו.
  • אתם מעדיפים שיחה חיה על פני שרשורים עמידים: השתמשו ב-NodeBB, או קבלו את העובדה שמדובר בצ'אט והריצו במקום זאת Rocket.Chat on Docker Compose. פורום שבו שום דבר לא ראוי לקריאה שבוע לאחר מכן היה צריך להיות שרת צ'אט.
  • מה שאתם צריכים בפועל הוא תיעוד ולא דיון: אף אחד מאלה לא מתאים. BookStack, Wiki.js or Outline עונים על צורך זה טוב יותר, ופורום מלא בשאלות חוזרות הוא בדרך כלל סימן לוויקי חסר.
  • עדיין מנסים להבין מה בכלל צריך להיות על השרת: the wider self-hosting shortlist for 2026 היא נקודת התחלה טובה יותר, ו-the self-hosted Notion alternatives guide מכסה את החפיפה שבין פורומים למרחבי עבודה משותפים.

לא משנה במי תבחרו, עמידות הפורום תלויה בגיבוי האחרון ששוחזר. בצעו Dump למסד הנתונים לפי לוח זמנים, העתיקו את ספריית ההעלאות באותה משימה, ושחזרו את התוצאה במקום אחר פעם אחת כדי להוכיח שה-Dump תקין. Scheduled restic backups on a VPS מכסה את החלק הזה, וזהו החלק היחיד בהגדרה הזו שאין בו הזדמנות שנייה.

FAQ

מהן דרישות המינימום לשרת עבור פורום באירוח עצמי?

phpBB עם SQLite פועל על 1 GB של RAM לצד שירותים אחרים, כיוון שאין צורך בשרת מסד נתונים. Flarum דורש 1 GB בתוספת MariaDB. NodeBB פועל בנוחות על 2 GB עם MongoDB. Discourse מפרסם 1 GB עם swap ו-10 GB של דיסק כמינימום, אך 2 GB הם הרף הריאלי, ו-4 GB מתאימים לפורום פעיל; זאת כיוון ש-./launcher rebuild app מבצע הידור מחדש של נכסים בזיכרון בכל שדרוג, וזהו הרגע שבו ה-kernel מסיים תהליכים בשרת קטן עקב חוסר בזיכרון (OOM).

האם ניתן להעביר את פורום ה-phpBB שלי ל-Discourse?

כן, וזהו מסלול ההגירה הנתמך ביותר כאן. Discourse מספק את script/import_scripts/phpbb3.rb, אותו מריצים בתוך ה-container מול עותק של מסד הנתונים של phpBB, לעולם לא מול מסד הנתונים החי. משתמשים, קטגוריות, נושאים, הודעות וקבצים מצורפים עוברים בהצלחה. סגנונות ותוספים אינם עוברים, וכתובות ה-URL של נושאים ישנים משתנות, לכן יש לתכנן הפניות (redirects) מנתיבי phpBB לפני החלפת ה-DNS. פורומים גדולים דורשים שעות, לכן בצעו חזרה על הייבוא בשרת ניסיוני ומדדו את הזמן הנדרש.

מדוע משתמשים חדשים לעולם לא מקבלים את דוא"ל ההפעלה?

רוב ספקי ה-VPS חוסמים את פורט 25 היוצא, לכן שרת דואר מקומי אינו יכול לבצע מסירה כלל והלוג מציג Connection timed out מול שרת הדואר של הנמען. כאשר המסירה עובדת, כתובת IP חדשה ללא רשומות SPF או DKIM נדחית או מסוננת, ו-Google משיבה עם 550 5.7.26 Unauthenticated email ... is not accepted due to domain's DMARC policy. שלחו דרך relay בפורט 587 ופרסמו את רשומות ה-SPF, ה-DKIM וה-DMARC שה-relay מספק לכם, לאחר מכן אשרו זאת באמצעות הרשמה לבדיקה וקראו את ה-header מסוג Authentication-Results בהודעה שתקבלו.

איזו תוכנת פורום באירוח עצמי דורשת את עבודת הניהול המועטה ביותר?

Discourse, כיוון שתהליך העבודה מוטמע בליבה ולא מתווסף כטלאי. חשבונות חדשים מוגבלים בקצב הפעולות עד שקראו מספיק, דגלים (flags) נאספים בתור שמתעד מי טיפל בהם, ותוסף Akismet הוא רשמי. phpBB מתקרב לכך ברגע שמפעילים את שיטת האנטי-ספאם "שאלה ותשובה", שעוצרת את רוב הרישומים של בוטים באופן עצמאי. Flarum ו-NodeBB מסתמכים על תוספי קהילה עבור אותן משימות. דבר מזה לא משנה את הגורם האמיתי: עומס הניהול גדל בהתאם לכמות האנשים שמפרסמים, ולא בהתאם לתוכנה שבה הם משתמשים.