דחיסת Gzip ו-Brotli: מדריך מלא עבור Nginx ו-Apache

האם האתר שלך מאבד מבקרים בגלל טעינה איטית, בעוד שאופטימיזציה קונבנציונלית כבר לא עוזרת? אנו מגדירים Gzip ו-Brotli על Nginx ו-Apache, ומפחיתים את כמות הנתונים המועברים ללא שינוי בקוד. הצוות שלנו מספק דחיסה מוכנה לשימוש עם קבצים סטטיים דחוסים מראש, ומבטיח פעולה אמינה ותמיכה מתמשכת.

פיתוח ותחזוקה של כל סוגי האתרים:

אתרי מידע או יישומי אינטרנט
אתרי תדמית, דפי נחיתה, אתרי חברה, קטלוגים מקוונים, חידונים, אתרי קידום, בלוגים, מקורות חדשות, פורטלי מידע, פורומים, אגרגטורים
אתרי מסחר אלקטרוני או יישומי אינטרנט
חנויות מקוונות, פורטלי B2B, שווקים, בורסות מקוונות, אתרי קאשבק, בורסות, פלטפורמות דרופשיפינג, מנתחי מוצרים
יישומי אינטרנט לניהול תהליכים עסקיים
מערכות CRM, מערכות ERP, פורטלים ארגוניים, מערכות ניהול ייצור, מנתחי מידע
אתרי שירות אלקטרוני או יישומי אינטרנט
פלטפורמות מודעות, בתי ספר מקוונים, בתי קולנוע מקוונים, בוני אתרים, פורטלים לשירותים אלקטרוניים, פלטפורמות אירוח וידאו, פורטלים נושאיים

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

השירותים שאנו מציעים
מציג 1 מתוך 1כל 2062 השירותים
דחיסת Gzip ו-Brotli: מדריך מלא עבור Nginx ו-Apache
פשוט
מ- 4 שעות עד 2 ימים

הכישורים שלנו:

שאלות נפוצות

העבודות האחרונות

  • פיתוח אתר חברה B2B ADVANCE
    פיתוח אתר חברה B2B ADVANCE
    1502
  • פיתוח אפליקציית ווב עבור FEEDME
    פיתוח אפליקציית ווב עבור FEEDME
    1344
  • פיתוח אתר עבור BELFINGROUP
    פיתוח אתר עבור BELFINGROUP
    1052
  • פיתוח חנות מקוונת לחברת FURNORO
    פיתוח חנות מקוונת לחברת FURNORO
    1306
  • פיתוח אפליקציית ווב עבור Enviok
    פיתוח אפליקציית ווב עבור Enviok
    1049
  • פיתוח אתר לחברת FIXPER
    פיתוח אתר לחברת FIXPER
    1033

תארו לעצמכם: האתר שלכם נטען תוך 5 שניות, אבל 80% מהזמן מושקע בהעברת חבילות JavaScript. כבר מיטבתם תמונות, הפעלתם מטמון, אבל המהירות כמעט לא השתפרה. סביר להניח שפספסתם דחיסה ברמת התעבורה. אנו מגדירים Gzip ו-Brotli על השרת, ומקטינים את גודל התוכן פי 3–10 ללא שינויי קוד. חיסכון בתעבורה יכול להגיע ל-70% עם Brotli — הפחתת עלויות אחסון ו-CDN.

Brotli מספק דחיסה טובה יותר ב-15–25% מ-Gzip בעומס CPU דומה. אחד הפרויקטים שלנו — חנות מקוונת עם חבילה של 1.2 MB. לאחר הפעלת Brotli עם נכסים סטטיים דחוסים מראש, הגודל ירד ל-280 KB, ו-LCP ירד מ-4.2 שניות ל-1.8 שניות. עבור קבצים סטטיים אנו משתמשים בנכסים דחוסים מראש — קבצי .gz ו-.br נוצרים בזמן הבנייה, והשרת מגיש אותם ללא דחיסה חוזרת. זה חוסך עד 30% מזמן ה-CPU בעומסי שיא.

למה Brotli עדיף על Gzip?

Brotli משתמש במילון עבור HTML/JS/CSS, מה שמאפשר אריזה הדוקה יותר. לדוגמה, app.js 500 KB נדחס ל-130 KB (Brotli) לעומת 150 KB (Gzip). ההבדל בולט במיוחד ברשתות סלולריות עם רוחב פס מוגבל. בנוסף, Brotli תומך ברמות דחיסה עד 11, מה שמאפשר דחיסה מקסימלית עבור נכסים סטטיים בזמן הבנייה. עם זאת, לדחיסה בזמן אמת, רמות גבוהות (9–11) מעמיסות מאוד על ה-CPU, ולכן רמה 6 מומלצת לתוכן דינמי.

פרמטר Gzip Brotli
אלגוריתם Deflate LZ77 + מילון
רמה מקסימלית 9 11
דחיסה ממוצעת (HTML) פי 4 פי 5
תמיכת דפדפנים 100% ~95%

איך למזער עומס CPU בזמן דחיסה?

השיטה העיקרית היא שימוש בנכסים סטטיים דחוסים מראש. קבצי .gz ו-.br נוצרים פעם אחת במהלך בניית הפרויקט (למשל, באמצעות vite-plugin-compression), והשרת מגיש אותם ישירות, וחוסך זמן CPU על כל בקשה. עבור תוכן דינמי (HTML, JSON), אנו מיישמים דחיסה בזמן אמת ברמה 6 — איזון בין יחס דחיסה לעומס. בשעות שיא, ניתן להשבית דחיסה עבור קבצים גדולים באמצעות ההנחיה gzip_min_length 256. ניטור CPU מאפשר התאמה בזמן אמת של רמות הדחיסה — אם העומס עולה על 80%, שקלו להוריד את הרמה או להגדיל את gzip_min_length. הפחתת עומס CPU מורידה את עלויות משאבי השרת.

Nginx: Gzip + Brotli

# /etc/nginx/nginx.conf или /etc/nginx/conf.d/compression.conf
# Gzip — поддерживается везде
gzip on;
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6; # 1-9, баланс CPU/сжатие; 6 — хорошая точка
gzip_min_length 256; # не сжимать очень маленькие файлы
gzip_types application/javascript application/json application/xml application/rss+xml image/svg+xml text/css text/html text/javascript text/plain text/xml font/woff font/woff2;
# Brotli — нужен модуль ngx_brotli
# Установка: apt install libnginx-mod-brotli
brotli on;
brotli_comp_level 6;
brotli_types application/javascript application/json text/css text/html text/plain image/svg+xml font/woff2;

אימות:

curl -H "Accept-Encoding: br" -I https://example.ru/ # Ответ должен содержать: Content-Encoding: br
curl -H "Accept-Encoding: gzip" -I https://example.ru/ # Ответ: Content-Encoding: gzip

נכסים סטטיים דחוסים מראש

עבור קבצים סטטיים (JS, CSS, חבילות) — צרו קבצי # /etc/nginx/nginx.conf или /etc/nginx/conf.d/compression.conf # Gzip — поддерживается везде gzip on; gzip_vary on; gzip_proxied any; gzip_comp_level 6; # 1-9, баланс CPU/сжатие; 6 — хорошая точка gzip_min_length 256; # не сжимать очень маленькие файлы gzip_types application/javascript application/json application/xml application/rss+xml image/svg+xml text/css text/html text/javascript text/plain text/xml font/woff font/woff2; # Brotli — нужен модуль ngx_brotli # Установка: apt install libnginx-mod-brotli brotli on; brotli_comp_level 6; brotli_types application/javascript application/json text/css text/html text/plain image/svg+xml font/woff2; ו-curl -H "Accept-Encoding: br" -I https://example.ru/ # Ответ должен содержать: Content-Encoding: br curl -H "Accept-Encoding: gzip" -I https://example.ru/ # Ответ: Content-Encoding: gzip בזמן הבנייה, והגישו ישירות. ללא עומס CPU לכל בקשה:

// vite.config.ts
import { defineConfig } from 'vite';
import viteCompression from 'vite-plugin-compression';

export default defineConfig({
  plugins: [
    viteCompression({
      algorithm: 'gzip',
      ext: '.gz'
    }),
    viteCompression({
      algorithm: 'brotliCompress',
      ext: '.br'
    }),
  ]
});
# Nginx: отдавать pre-compressed файлы
location ~* \.(js|css|woff2)$ {
    gzip_static on; # ищет .gz версию
    brotli_static on; # ищет .br версию (модуль ngx_brotli)
    expires 1y;
    add_header Cache-Control "public, immutable";
}

איך לוודא שהדחיסה עובדת?

השתמשו ב-.gz או בכרטיסיית Network בכלי הפיתוח. התשובה צריכה לכלול כותרת .br או // vite.config.ts import { defineConfig } from 'vite'; import viteCompression from 'vite-plugin-compression'; export default defineConfig({ plugins: [ viteCompression({ algorithm: 'gzip', ext: '.gz' }), viteCompression({ algorithm: 'brotliCompress', ext: '.br' }), ] }); . כמו כן, בדקו את # Nginx: отдавать pre-compressed файлы location ~* \.(js|css|woff2)$ { gzip_static on; # ищет .gz версию brotli_static on; # ищет .br версию (модуль ngx_brotli) expires 1y; add_header Cache-Control "public, immutable"; } — היא אומרת לשרתי מטמון שהתוכן תלוי בקידוד. לאבחון שלב-אחר-שלב, ניתן להשתמש בשירותים מקוונים, כמו כלים לבדיקת כותרות.

אם הלקוח לא תומך ב-Brotli, Nginx נופל אוטומטית ל-Gzip או לתוכן לא דחוס. ודאו שההנחיה curl מופעלת — זה מבטיח מנגנון גיבוי. שימוש ב-CDN עם תמיכת Brotli מאיץ עוד יותר את העברת התוכן ומפחית את העומס על שרת המקור.

תוצאות דחיסה אופייניות

קובץ מקורי Gzip Brotli
app.js 500 KB 150 KB 130 KB
app.css 80 KB 18 KB 15 KB
דף HTML 50 KB 12 KB 10 KB

רמות דחיסה: המלצות

רמות 1–3 — עומס CPU נמוך, דחיסה חלשה. 4–6 — מאוזן. 7–9 — דחיסה גבוהה, אבל ה-CPU גדל באופן לא ליניארי: רמה 9 לוקחת פי 3 יותר זמן מרמה 6. עבור קבצים דחוסים מראש, השתמשו ברמה 11 (Brotli בלבד) — נדחס פעם אחת בזמן הבנייה.

Apache

# .htaccess
<IfModule mod_deflate.c>
    AddOutputFilterByType DEFLATE text/html text/css application/javascript
    AddOutputFilterByType DEFLATE application/json image/svg+xml font/woff2
</IfModule>

תהליך הגדרת הדחיסה

  1. ניתוח תצורת השרת הנוכחית (Nginx/Apache).
  2. בחירת רמות דחיסה (Gzip 6, Brotli 6 — מאוזן).
  3. הגדרת חריגים (פורמטים שאינם ניתנים לדחיסה: PNG, JPEG, MP4).
  4. יצירת קבצים דחוסים מראש בבנייה (Vite, Webpack).
  5. אימות כותרות תשובה (Content-Encoding, Vary).
  6. ניטור עומס CPU.

מה כלול בעבודה

  • הגדרת Gzip ו-Brotli על השרת (Nginx/Apache).
  • הגדרת נכסים סטטיים דחוסים מראש (אם משתמשים ב-bundler).
  • אימות כותרות ובדיקת דחיסה.
  • תיעוד השינויים שבוצעו.
  • המלצות לרמות דחיסה בהתאם לתעבורה שלכם.

המהנדסים שלנו מגדירים דחיסה כבר למעלה מ-5 שנים — מיטבנו את מהירות הטעינה ל-100+ פרויקטים, והפחתנו את LCP ו-TTFB ב-40–60%. רוצים את אותו הדבר? צרו קשר — נבצע ביקורת וניישם דחיסת Gzip ו-Brotli ביום אחד. הזמינו הגדרת דחיסה וקבלו ייעוץ להאצת האתר שלכם היום.