Bird
Raised Fist0
Nginxdevops~5 mins

Gzip compression in Nginx - Cheat Sheet & Quick Revision

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is Gzip compression in the context of nginx?
Gzip compression is a method used by nginx to reduce the size of files sent from the server to the client, making web pages load faster by compressing text-based content like HTML, CSS, and JavaScript.
Click to reveal answer
beginner
Which nginx directive enables Gzip compression?
The directive gzip on; enables Gzip compression in the nginx configuration.
Click to reveal answer
intermediate
What does the gzip_types directive do in nginx?
The gzip_types directive specifies which MIME types should be compressed by Gzip, such as text/html, application/javascript, and text/css.
Click to reveal answer
beginner
How can you check if Gzip compression is working on your website?
You can check Gzip compression by using browser developer tools or online tools that inspect response headers for Content-Encoding: gzip, indicating the content is compressed.
Click to reveal answer
intermediate
What is the purpose of the gzip_min_length directive?
The gzip_min_length directive sets the minimum size of a response that will be compressed. Responses smaller than this size will not be compressed to avoid overhead.
Click to reveal answer
Which nginx directive turns on Gzip compression?
Agzip on;
Bgzip_enable;
Cenable_gzip;
Dcompression on;
What type of content is typically compressed by Gzip in nginx?
AImages like PNG and JPEG
BBinary executable files
CVideo files
DText-based files like HTML, CSS, and JavaScript
Which header indicates that the response is compressed with Gzip?
AContent-Encoding: gzip
BContent-Type: gzip
CEncoding: gzip
DCompression: gzip
What does the gzip_min_length directive control?
AMaximum size of files to compress
BMinimum size of files to compress
CCompression level
DTimeout for compression
If you want to compress JSON responses, which directive should you configure?
Agzip_json on;
Bgzip_include json;
Cgzip_types application/json;
Dgzip_enable json;
Explain how to enable and configure Gzip compression in nginx for a website.
Think about the main directives and the steps to activate compression.
You got /4 concepts.
    Describe how you can verify that Gzip compression is working correctly on your web server.
    Focus on tools and headers that show compression status.
    You got /3 concepts.

      Practice

      (1/5)
      1. What is the main purpose of enabling gzip compression in nginx?
      easy
      A. To block certain file types from being served
      B. To increase the server's CPU usage for better performance
      C. To encrypt data between server and client
      D. To reduce the size of files sent to the browser, speeding up page load

      Solution

      1. Step 1: Understand gzip compression purpose

        Gzip compresses files to reduce their size before sending to the browser.
      2. Step 2: Connect compression to page load speed

        Smaller files load faster, improving website speed and user experience.
      3. Final Answer:

        To reduce the size of files sent to the browser, speeding up page load -> Option D
      4. Quick Check:

        gzip compression = smaller files = faster load [OK]
      Hint: Remember gzip shrinks files to speed up loading [OK]
      Common Mistakes:
      • Thinking gzip increases CPU for performance
      • Confusing gzip with encryption
      • Believing gzip blocks files
      2. Which of the following is the correct way to enable gzip compression in nginx configuration?
      easy
      A. gzip on;
      B. gzip enable;
      C. enable gzip;
      D. gzip true;

      Solution

      1. Step 1: Recall nginx gzip syntax

        The correct directive to enable gzip is gzip on;.
      2. Step 2: Check other options for syntax errors

        Options A, C, and D use invalid keywords or syntax not recognized by nginx.
      3. Final Answer:

        gzip on; -> Option A
      4. Quick Check:

        Enable gzip with 'gzip on;' [OK]
      Hint: Use exact directive 'gzip on;' to enable gzip [OK]
      Common Mistakes:
      • Using 'gzip enable;' instead of 'gzip on;'
      • Writing 'enable gzip;' which is invalid
      • Using 'gzip true;' which is not recognized
      3. Given this nginx snippet:
      gzip on;
      gzip_types text/plain application/json;

      Which file types will be compressed when served?
      medium
      A. All file types are compressed
      B. Only text/plain and application/json files
      C. No files are compressed because gzip_types is incomplete
      D. Only binary files are compressed

      Solution

      1. Step 1: Analyze gzip_types directive

        The directive specifies only text/plain and application/json MIME types for compression.
      2. Step 2: Understand gzip on directive effect

        With gzip on;, only the listed types in gzip_types are compressed.
      3. Final Answer:

        Only text/plain and application/json files -> Option B
      4. Quick Check:

        gzip_types limits compression to listed types [OK]
      Hint: gzip_types controls which file types get compressed [OK]
      Common Mistakes:
      • Assuming all files compress by default
      • Thinking gzip_types must list all types including binaries
      • Believing gzip_types disables compression
      4. You added gzip on; and gzip_types text/html; to nginx.conf but compression is not working. What is the likely mistake?
      medium
      A. Enabling gzip disables compression by default
      B. Using gzip_types with only one type
      C. Forgetting to reload nginx after config change
      D. Missing gzip_disable directive

      Solution

      1. Step 1: Check nginx reload requirement

        After config changes, nginx must be reloaded to apply new settings.
      2. Step 2: Evaluate other options

        Using one type in gzip_types is valid; gzip on enables compression; gzip_disable disables it for some clients but is optional.
      3. Final Answer:

        Forgetting to reload nginx after config change -> Option C
      4. Quick Check:

        Reload nginx to apply gzip changes [OK]
      Hint: Always reload nginx after config edits [OK]
      Common Mistakes:
      • Not reloading nginx after config update
      • Thinking gzip_types must list many types
      • Confusing gzip_disable as required
      5. You want to compress HTML, CSS, and JavaScript files in nginx. Which configuration snippet correctly enables gzip for these types?
      hard
      A. gzip on;\ngzip_types text/html text/css application/javascript;
      B. gzip on;\ngzip_types html css js;
      C. gzip enable;\ngzip_types text/html text/css application/javascript;
      D. gzip on;\ngzip_types text/html text/css js;

      Solution

      1. Step 1: Verify gzip enabling syntax

        The correct directive to enable gzip is gzip on;, not gzip enable;.
      2. Step 2: Check MIME types in gzip_types

        File types must be specified by their MIME types: text/html, text/css, and application/javascript. Using extensions like 'html', 'css', or 'js' is invalid.
      3. Final Answer:

        gzip on;\ngzip_types text/html text/css application/javascript; -> Option A
      4. Quick Check:

        Use 'gzip on;' and correct MIME types [OK]
      Hint: Use MIME types, not file extensions, in gzip_types [OK]
      Common Mistakes:
      • Using 'gzip enable;' instead of 'gzip on;'
      • Listing file extensions instead of MIME types
      • Omitting JavaScript MIME type