Skip to content
Clairos Learn

Troubleshooting · Lesson 20 of 26 · 8 minutes

Incident nginx config mismatch

Compare active config and expected config examples.

Mastery 0/3Run itExplain itApply it
learner@clairosSimulated Linux lab
learner@clairos:~ $
↑ history · Tab complete · Ctrl+C cancel · Esc, Tab to leaveExit 0

Understand the pattern

Junior operators build confidence by gathering evidence before changing systems.

cat
Read one or more files to standard output without editing their contents.

Reading a source file should precede changing it; avoid printing real secrets.

diff
Compare two text files; a difference is a meaningful nonzero status, not necessarily an execution error.

Status 1 means differences for diff; shell status must be interpreted in command context.

grep
Select input lines that match a pattern; -i ignores case, -n adds line numbers, and -v inverts selection.

No matches is exit status 1, which is different from a malformed invocation.

Worked example and expected result
$ cat /etc/nginx/sites-available/learn.conf
server {
  listen 443 ssl;
  server_name learn.clairos.ai;
  root /srv/www;
  location ^~ /api/learn/ { proxy_pass http://127.0.0.1:8010; }
  location ^~ /api/ { return 404; }
  add_header Content-Security-Policy "default-src 'self'; connect-src 'self'" always;
  # training config only
}

Exit status: 0. The command completed successfully in the training fixture.

$ diff data/config-a.conf data/config-b.conf
--- /home/learner/data/config-a.conf
+++ /home/learner/data/config-b.conf
-listen 443 ssl;
+listen 8443 ssl;

Exit status: 1. This nonzero result is an expected part of this exercise.

$ grep listen data/config-b.conf
listen 8443 ssl;

Exit status: 0. The command completed successfully in the training fixture.

Try a variation

Repeat this workflow in the sandbox with a different scratch filename. Keep the system fixtures unchanged and compare the observed output with your expectation before moving on.

Explain it

In “Incident nginx config mismatch”, which interpretation is safe?

Apply it elsewhere

Before adapting the diff workflow from “Incident nginx config mismatch” to another server, what should you do?

Keep the momentum.

Complete the lab, then explain and apply the pattern.

Next: Incident resource spikeTry an incident drill

Anonymous lesson and mastery progress lasts for this session. Sign in to keep synced lesson XP between sessions; mastery stays device-local. No speed bonus, lost lives, or hint penalties.

Keep learning

  1. 01Incident backup inactiveTriage inactive backup state and manifest context.Practice
  2. 02Incident resource spikeBuild a resource snapshot before blaming a process.Practice
  3. 03Incident rollback evidenceCapture rollback evidence before writing a note.Practice