
Nginx as a Reverse Proxy: The Config, and What Breaks
The six lines that proxy, the four headers most examples omit, and the three failures a reverse proxy actually produces — 502, 504 and the 499 nobody receives.
Neeraj Jha
Topic
Infrastructure as code moves servers and networks into the same review, history and rollback workflow as application code. The benefit that matters most is not automation; it is that you can answer "what changed?" with a diff.
The hard parts are state and drift. Terraform provisions resources and records what it created; when reality diverges from that record — someone clicked something in a console — you get the failures that make IaC feel fragile. Understanding state is most of understanding Terraform.
Existing pages in an order where each step answers a question the previous one raised, with an exercise at the end.
Step-by-step, with copy-paste commands and an assistant that answers questions about the guide you are reading.
Named errors and symptoms, each with its causes, a command that confirms each one, and the fix.
force-unlock on that one can corrupt your state. The whole question is which.uuid() or timestamp(), or a secret, it refuses. The durable fix is in the error message itself: keep the keys in your configuration and let only the values wait for apply.terraform state rm on a resource the plan never touches — because the plan's changes were calculated for a state that no longer exists. There is no flag to force it, and you should not want one: plan again..terraform.lock.hcl records exactly which version of each provider the configuration uses. When the configuration asks for a provider the lock file does not have, or for a version range the locked version is outside of, Terraform stops rather than quietly choose. The fix depends on which: a new provider needs a plain terraform init; a changed version constraint needs terraform init -upgrade, which upgrades every provider, not just the one you changed.Pairs of things that get mistaken for one another, and the problem the mix-up causes.
The design decision behind the behaviour, and what it costs you.
Ordered by how much they are read.

The six lines that proxy, the four headers most examples omit, and the three failures a reverse proxy actually produces — 502, 504 and the 499 nobody receives.
Neeraj Jha

Learn Infrastructure as Code with Terraform — from your first resource to production-ready modules, state management, and CI integration.
Neeraj Jha
Updated

Why a Kubernetes cluster is full at 10% utilisation: the scheduler commits against requests, not usage, and that gap is where most overspend lives. Your dashboards and the scheduler are both right.
Neeraj Jha

Step-by-step guide to building your first AWS infrastructure — VPCs, subnets, security groups, EC2 instances, and networking fundamentals.
Neeraj Jha
Updated

Get started with Ansible for server automation — inventory, playbooks, roles, common modules, and best practices for DevOps workflows.
Neeraj Jha

When AWS says AccessDenied, the error names only one of the several policy types it checks in a fixed order: how to find the policy that actually said no. The two phrases that tell you where to look, and the one command to run first.
Neeraj Jha
Updated

You added a public bucket policy and still get 403. Block Public Access has four switches at two levels, two of which only refuse new grants. How they combine, why encryption can block the internet too, and the safer way to publish files.
Neeraj Jha

What rebooting, stopping, hibernating and terminating an EC2 instance each keep and lose, from AWS's own comparison. Four actions that sound similar and are not, including the public IP that changes and the disk that vanishes.
Neeraj Jha

Provider produced inconsistent result after apply means the API rewrote a value you sent. How to read the was and but now values, fix the configuration, and avoid the tainted resource it leaves behind.
Neeraj Jha

Missing Resource Identity After Read and Unexpected Identity Change usually start right after a provider upgrade. Why they are provider bugs, and the upgrade-or-pin fix that clears them.
Neeraj Jha
Real questions from the community, with an accepted answer.