הגדרת CDN עבור 1C-Bitrix: כיצד להאיץ את האתר ולהפחית את העומס על השרת
לעיתים קרובות אנו נתקלים במצב: חנות מקוונת על Bitrix איטית באזורים מרוחקים, והשרת עמוס יתר על המידה בעומסי שיא. CDN (Content Delivery Network) פותר את שתי הבעיות — הוא מסיר מהשרת את הטיפול בתוכן סטטי ומקצר את זמן הטעינה עבור משתמשים מרוחקים.
לדוגמה, עבור חנות עם קהל ברחבי רוסיה, ההבדל בין מוסקבה לולדיווסטוק ללא CDN הוא 150–200 מ"ש רק עבור DNS ו-TCP. עם נקודת נוכחות CDN בולדיווסטוק, תוכן סטטי מוגש תוך 5–15 מ"ש.
במהלך 10 שנים הגדרנו CDN עבור יותר מ-50 פרויקטים של Bitrix — אנו חולקים את הניסיון שלנו. ללא תצורה נכונה של CDN, אפילו שרת חזק לא יעזור — צוואר הבקבוק נשאר ברמת הרשת.
הבעיות העיקריות ש-CDN פותר
- השהיה גבוהה עבור משתמשים מרוחקים גיאוגרפית. ללא CDN, בקשות מגיעות לשרת בודד, מה שקריטי עבור אזורי רוסיה וחבר המדינות.
- עומס יתר על השרת מתוכן סטטי. לפי המדידות שלנו, עד 80% מהתעבורה בחנות טיפוסית היא תמונות, CSS ו-JS. הגשתם דרך CDN מפחיתה את העומס על ה-CPU והרשת של השרת הראשי ב-50–70%.
- מטמון לא אופטימלי. הגדרות Bitrix טיפוסיות לא תמיד מגדירות נכון את Cache-Control עבור תוכן סטטי, מה שמוביל לבקשות מיותרות.
כיצד לבחור ספק CDN עבור Bitrix?
בעת בחירת CDN, יש לקחת בחשבון כיסוי, מחיר ואינטגרציה. הנה השוואה של ספקים פופולריים עבור פרויקטים של Bitrix:
| ספק | כיסוי ברוסיה | תוכנית חינמית | Purge API | SSL/TLS |
|---|---|---|---|---|
| Cloudflare | מוגבל (מוסקבה, סנקט פטרבורג) | כן (עד 100 GB) | כן | אוטומטי |
| G-Core Labs | נרחב (יותר מ-10 PoP ברוסיה) | לא (תקופת ניסיון) | כן | Let's Encrypt |
| Selectel CDN | טוב (מוסקבה, סנקט פטרבורג, נובוסיבירסק) | לא | כן | CA עצמאי |
| KeyCDN | אירופה, אסיה | לא | כן | Let's Encrypt |
עבור הפלח הרוסי, G-Core Labs הוא האופטימלי — השהיה נמוכה בכל האזורים. Cloudflare מתאים להתחלה, אך התוכנית החינמית שומרת במטמון רק תוכן סטטי, והספק עשוי לסנן תעבורה. קראו עוד על טכנולוגיית CDN במקורות חיצוניים. מקור: ויקיפדיה
מדוע CDN לא שומר במטמון דפים דינמיים?
דפים דינמיים (קטלוג, עגלת קניות) עם עיבוד PHP מסוכן לשמור במטמון ב-CDN — משתמשים יראו נתונים של אחרים. לכן, רק משאבים סטטיים מועברים ל-CDN: קבצים מתוך /bitrix/cache/css/, /bitrix/js/, /upload/, גופנים, אייקונים.
המודול המובנה bitrix.cdn משכתב אוטומטית את כתובות ה-URL של משאבים אלה לדומיין ה-CDN. אם המודול אינו בשימוש — הגדירו nginx sub_filter או כלל בצד הספק.
כיצד להגדיר CDN עבור Bitrix: הוראות שלב אחר שלב
- בחירת ספק והרשמה. החליטו על ספק (אנו ממליצים על G-Core Labs עבור רוסיה), צרו חשבון, קבלו רשומת CNAME או PTR.
- הגדרת DNS ו-SSL. כוונו CNAME לדומיין ה-CDN (לדוגמה,
cdn.mysite.ru). הספק ינפיק אוטומטית תעודת SSL. - הגדרת מודול ה-CDN ב-Bitrix. בלוח הניהול:
Settings → Performance → CDN. ציינו את דומיין ה-CDN ומסכות הנתיבים (/upload/*,/bitrix/cache/*). בגרסת "Business" ומעלה, המודול מובנה. - אימות וביטול תוקף מטמון. לאחר ההגדרה, ודאו שתוכן סטטי מוגש מ-CDN (באמצעות
curl -I). הגדירו purge אוטומטי בעת עדכון תבניות — השתמשו ב-API של הספק דרך האירועOnAfterUpdateStaticFiles. - ניטור מהירות. השוו את זמן הטעינה לפני ואחרי באמצעות PageSpeed או WebPageTest. הפחתה טיפוסית של TTFB עבור תוכן סטטי — מ-200 מ"ש ל-20 מ"ש.
מדיניות מטמון וביטול תוקף
Cache-Control נכון עבור תוכן סטטי של Bitrix: קבצים עם hash בשם (נוצרים על ידי Bitrix במהלך דחיסה) — max-age=31536000, immutable. קבצים ללא hash (style.css, script.js) — לא יותר מיום עם must-revalidate.
ביטול תוקף מטמון בעת עדכון תבנית: השתמשו ב-API של הספק כדי לבצע purge לפי URL או מסכות. זה מבוצע אוטומטית דרך hook של פריסה או האירוע OnAfterUpdateStaticFiles של Bitrix.
הנה טבלה של ערכי Cache-Control מומלצים עבור סוגי קבצים שונים:
| סוג קובץ | נתיב לדוגמה | Cache-Control | הערה |
|---|---|---|---|
| CSS/JS עם hash | /bitrix/cache/css/*.css? |
max-age=31536000, immutable |
ה-hash משתנה בעדכון |
| ללא hash | /bitrix/js/main/core.js |
max-age=86400, must-revalidate |
יש לאמת רלוונטיות |
| תמונות | /upload/medialibrary/*.jpg |
max-age=86400 |
סוג קובץ עתיר משאבים |
מה כלול בהגדרת CDN במפתח
- ביקורת של הארכיטקטורה הנוכחית וזיהוי צווארי בקבוק.
- בחירת ספק תוך התחשבות בגיאוגרפיה של הקהל.
- הגדרת DNS, SSL (הנפקה אוטומטית).
- אינטגרציה עם המודול
bitrix.cdnאו nginxsub_filter. - תצורת מדיניות מטמון:
Cache-Controlעםmax-ageו-immutableעבור קבצים עם hash. - אוטומציה של ביטול תוקף מטמון דרך ה-API של הספק.
- בדיקות ביצועים (מבחן A/B לפני/אחרי).
- תיעוד והדרכה עבור הצוות שלכם.
מקרה בוחן מהפרקטיקה שלנו
הלקוח שלנו הוא חנות מקוונת עם קהל ברוסיה ובקזחסטן. לאחר חיבור CDN (G-Core Labs), זמן טעינת הדף עבור משתמשים מקזחסטן ירד מ-3.8 שניות ל-1.4 שניות — רק בזכות תוכן סטטי. חלק ה-PHP לא שונה.
החיסכון בתעבורה בשרת הראשי הסתכם ב-65%. זה מאשר ש-CDN מוגדר כראוי מאיץ את האתר פי 2.7 ללא שינויים ב-backend.
לוחות זמנים ועלות
הגדרת CDN עבור Bitrix אורכת בין 1 ל-3 ימים בהתאם למורכבות (בחירת ספק, הגדרת DNS, תצורת מודול, בדיקות). העלות מחושבת בנפרד — היא תלויה במספר אזורי המטמון שפותחו ובאוטומציה.
צרו קשר — נבחן את הפרויקט שלכם ונכין הצעת מחיר. קבלו ייעוץ: כתבו לנו בצ'אט או השאירו בקשה — נעזור בבחירת CDN ובהגדרה במפתח.

