<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Nginx on ilham.dev</title><link>https://ilham.dev/tags/nginx/</link><description>Recent content in Nginx on ilham.dev</description><generator>Hugo -- gohugo.io</generator><language>en</language><lastBuildDate>Sun, 27 Sep 2026 00:00:00 +0700</lastBuildDate><atom:link href="https://ilham.dev/tags/nginx/index.xml" rel="self" type="application/rss+xml"/><item><title>How I build a basic nginx config without starting from an empty file</title><link>https://ilham.dev/posts/how-to-build-a-basic-nginx-config/</link><pubDate>Sun, 27 Sep 2026 00:00:00 +0700</pubDate><guid>https://ilham.dev/posts/how-to-build-a-basic-nginx-config/</guid><description>An nginx config is easier to write when I start from the kind of site I am serving: static files, SPA, PHP, or reverse proxy.
The nginx Config Generator tool helps me inspect the input and output without writing a one-off script first.</description></item><item><title>How I build an nginx reverse proxy config without memorising everything</title><link>https://ilham.dev/posts/how-to-build-nginx-reverse-proxy-config/</link><pubDate>Sun, 27 Sep 2026 00:00:00 +0700</pubDate><guid>https://ilham.dev/posts/how-to-build-nginx-reverse-proxy-config/</guid><description>An nginx reverse proxy config can look intimidating when you are still learning:
server { listen 80; server_name app.example.com; location / { proxy_pass http://127.0.0.1:3000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } } The config is not random.</description></item></channel></rss>