Bird
Raised Fist0
Nginxdevops~5 mins

502 Bad Gateway troubleshooting in Nginx - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does a 502 Bad Gateway error indicate in nginx?
It means nginx received an invalid response from the upstream server it tried to contact.
Click to reveal answer
beginner
Name two common causes of a 502 Bad Gateway error in nginx.
1. The upstream server is down or unreachable.
2. The upstream server is overloaded or crashing.
Click to reveal answer
intermediate
Which nginx configuration directive specifies the upstream server address?
The proxy_pass directive inside a location block tells nginx where to send requests.
Click to reveal answer
beginner
How can you check if the upstream server is reachable from the nginx server?
Use commands like curl or telnet to test connection to the upstream server's IP and port.
Click to reveal answer
intermediate
What nginx log files help diagnose 502 Bad Gateway errors?
The error.log file usually contains detailed error messages about upstream failures.
Click to reveal answer
What does a 502 Bad Gateway error mean in nginx?
AThe client sent a bad request
BNginx server is overloaded
CNginx cannot reach the upstream server or got a bad response
DDNS resolution failed
Which nginx directive sets the upstream server address?
Aproxy_pass
Bserver_name
Clisten
Droot
If you see a 502 error, what is a good first step to troubleshoot?
ARestart the client browser
BCheck if the upstream server is running and reachable
CChange DNS settings
DClear nginx cache
Where do you find nginx error messages related to 502 errors?
A/var/log/nginx/error.log
B/usr/share/nginx/html/index.html
C/etc/nginx/nginx.conf
D/var/log/nginx/access.log
Which command can you use to test connectivity to the upstream server?
Achmod
Bls
Ccat
Dcurl
Explain the main reasons why nginx might return a 502 Bad Gateway error and how you would check for them.
Think about the connection between nginx and the server it forwards requests to.
You got /5 concepts.
    Describe how to use nginx configuration to specify the upstream server and how misconfiguration can cause 502 errors.
    Focus on the proxy_pass setting inside location blocks.
    You got /4 concepts.

      Practice

      (1/5)
      1. What does a 502 Bad Gateway error usually indicate in nginx?
      easy
      A. nginx cannot get a valid response from the backend server
      B. nginx configuration file has a syntax error
      C. nginx server is overloaded with too many requests
      D. nginx is running out of disk space

      Solution

      1. Step 1: Understand the meaning of 502 Bad Gateway

        A 502 error means the gateway (nginx) got an invalid response from the backend server it tries to connect to.
      2. Step 2: Identify the cause related to backend communication

        This error is not about nginx config syntax or server load, but about backend response failure.
      3. Final Answer:

        nginx cannot get a valid response from the backend server -> Option A
      4. Quick Check:

        502 Bad Gateway = backend response failure [OK]
      Hint: 502 means backend server response problem [OK]
      Common Mistakes:
      • Confusing 502 with nginx config syntax errors
      • Thinking 502 means nginx is overloaded
      • Assuming 502 is due to disk space issues
      2. Which of the following nginx configuration directives is essential to correctly proxy requests to a backend server to avoid 502 errors?
      easy
      A. listen 8080;
      B. root /var/www/html;
      C. server_name localhost;
      D. proxy_pass http://backend_server;

      Solution

      1. Step 1: Identify the directive that defines backend server address

        The proxy_pass directive tells nginx where to send requests, crucial for proxying.
      2. Step 2: Understand other directives' roles

        listen sets port, server_name sets hostname, root sets static file location; none define backend proxy.
      3. Final Answer:

        proxy_pass http://backend_server; -> Option D
      4. Quick Check:

        proxy_pass sets backend URL [OK]
      Hint: proxy_pass sets backend URL to avoid 502 [OK]
      Common Mistakes:
      • Using listen instead of proxy_pass for backend
      • Confusing server_name with backend address
      • Setting root instead of proxy_pass for proxying
      3. Given this nginx error log snippet:
      connect() failed (111: Connection refused) while connecting to upstream
      What is the most likely cause of the 502 error?
      medium
      A. nginx has insufficient permissions to read files
      B. nginx configuration syntax error
      C. Backend server is not running or not accepting connections
      D. DNS resolution failure for backend server

      Solution

      1. Step 1: Interpret the error message

        "Connection refused" means nginx tried to connect but backend server refused, likely because it is down or not listening.
      2. Step 2: Rule out other causes

        Syntax errors cause config reload failures, permissions affect file access, DNS failure shows different errors.
      3. Final Answer:

        Backend server is not running or not accepting connections -> Option C
      4. Quick Check:

        Connection refused = backend down [OK]
      Hint: Connection refused means backend server is down [OK]
      Common Mistakes:
      • Assuming syntax error from connection refused
      • Blaming nginx file permissions
      • Thinking DNS failure causes connection refused
      4. You see a 502 error in nginx logs caused by upstream timed out. Which fix is most appropriate?
      medium
      A. Clear browser cache and cookies
      B. Increase proxy_read_timeout in nginx config
      C. Change server_name directive
      D. Restart nginx service immediately

      Solution

      1. Step 1: Understand the timeout error

        "upstream timed out" means nginx waited too long for backend response.
      2. Step 2: Adjust nginx timeout settings

        Increasing proxy_read_timeout lets nginx wait longer before giving 502 error.
      3. Final Answer:

        Increase proxy_read_timeout in nginx config -> Option B
      4. Quick Check:

        Timeout error fixed by increasing proxy_read_timeout [OK]
      Hint: Increase proxy_read_timeout to fix upstream timeout [OK]
      Common Mistakes:
      • Restarting nginx without config change
      • Changing server_name unrelated to timeout
      • Clearing browser cache won't fix backend timeout
      5. You fixed a backend server crash causing 502 errors. What is the correct next step to apply nginx changes and confirm the fix?
      hard
      A. Reload or restart nginx and check error logs for 502 errors
      B. Clear browser cache and refresh the page
      C. Edit nginx config to change server_name
      D. Delete nginx access logs to free space

      Solution

      1. Step 1: Apply nginx configuration and backend fixes

        After fixing backend, reload or restart nginx to apply any config changes and reset connections.
      2. Step 2: Verify fix by checking logs

        Check nginx error logs to confirm 502 errors no longer appear, ensuring the problem is solved.
      3. Final Answer:

        Reload or restart nginx and check error logs for 502 errors -> Option A
      4. Quick Check:

        Reload nginx and check logs to confirm fix [OK]
      Hint: Reload nginx and check logs after backend fix [OK]
      Common Mistakes:
      • Only clearing browser cache without server reload
      • Changing unrelated config like server_name
      • Deleting logs instead of reading them
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard