فعال‌سازی فشرده‌ساز Gzip

فعال‌سازی فشرده‌ساز Gzip

وظیفه Gzip فشرده‌سازی فایل‌های ارسالی از سرور به مرورگر می باشد که باعث افزایش قابل توجه سرعت وب‌سایت می‌شود.

وقتی یک کاربر در سایت شما درخواستی را به سرور ارسال می‌کند، سرور فایل موردنظر را به مرورگر ارسال می‌کند، هر چقدر حجم فایل ارسالی بیشتر باشد، زمان بیشتری جهت نمایش در مرورگر نیاز دارد. Gzip محتوای درخواستی را قبل از ارسال به مرورگر فشرده‌سازی می‌کند تا سرعت بارگذاری مرورگر افزایش یابد.

دلیل کارایی بالای Gzip این است که در محیط وب، فایل‌های CSS و HTML از متن‌های تکراری زیادی استفاده می‌کنند و Gzip با فشرده‌سازی این فایل‌ها می‌تواند تا میزان 70 درصد سرعت بارگذاری وب‌سایت شما را بهبود بخشد.

روش‌های متفاوتی جهت فعال‌سازی Gzip بر روی وب سرورها وجود دارد که آن هم به نوع وب سرور استفاده شده بستگی دارد. وب سرورهایی نظیر IIS, Apache, NGINX, Word Press و سایر وب سرورها.

در این مقاله به شیوه فعال‌سازی Gzip در برخی از وب سرورها اشاره خواهیم کرد.

1- IIS

بر روی سرور و داخل فایل.htaccess کد زیر را وارد کنید.

    mod_gzip_on Yes
    mod_gzip_dechunk Yes
    mod_gzip_item_include file. (html?|txt|css|js|php|pl)$
    mod_gzip_item_include handler ^cgi-script$
    mod_gzip_item_include mime ^text/.*
    mod_gzip_item_include mime ^application/x-javascript.*
    mod_gzip_item_exclude mime ^image/.*
    mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*

2- Apache

در وب سرور Apache نیز می‌توانید از همان کد بالا در فایل.htaccess استفاده کنید. در صورتی که کد بالا جواب نداد می‌توانید از کد زیر استفاده کنید.

    AddOutputFilterByType DEFLATE text/plain
    AddOutputFilterByType DEFLATE text/html
    AddOutputFilterByType DEFLATE text/xml
    AddOutputFilterByType DEFLATE text/css
    AddOutputFilterByType DEFLATE application/xml
    AddOutputFilterByType DEFLATE application/xhtml+xml
    AddOutputFilterByType DEFLATE application/rss+xml
    AddOutputFilterByType DEFLATE application/javascript
    AddOutputFilterByType DEFLATE application/x-javascript

3- NGINX

بر روی وب سرور NGINX کافی است کد زیر را در فایل پیکربندی (Configuration) وارد نمایید.

    gzip on;
    gzip_comp_level 2;
    gzip_http_version 1.0;
    gzip_proxied any;
    gzip_min_length 1100;
    gzip_buffers 16 8k;
    gzip_types text/plain text/html text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript;

    # Disable for IE < 6 because there are some known problems
    gzip_disable "MSIE [1-6]. (?!.*SV1)";

    # Add a vary header for downstream proxies to avoid sending cached gzipped files to IE6
    gzip_vary on;

4- Word Press

در مورد Word Press بهترین راه‌حل برای فعال‌سازی Gzip استفاده از فایل.htaccess بر روی سرور است اما اگر به سرور دسترسی ندارید می‌توانید با استفاده از کنترل پنل Word Press و نصب افزونه‌های مرتبط با فشرده‌ساز Gzip این قابلیت را به وب‌سایت خود اضافه کنید. در زیر نمونه‌ای از افزونه Gzip معرفی می‌شود.

پلاگین فشرده ساز check-and-enable-gzip-compression