mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-08-30 23:38:13 +02:00
- Renamed all Readme.md → README.md - Renamed all Todo.md → TODO.md - Added integration test (tests/integration/test_filename_conventions.py) to automatically check naming convention. Background: Consistency in file naming (uppercase README.md and TODO.md) avoids issues with case-sensitive filesystems and ensures desktop cards (e.g. Pretix) are properly included. Ref: https://chatgpt.com/share/68b1d135-c688-800f-9441-46a3cbfee175
Nginx WWW Redirect 🌐
Description
Automates the creation of Nginx server blocks that redirect all www.
subdomains to their non-www equivalents. Simple, idempotent, and SEO-friendly! 🚀
Overview
This role will:
- Discover existing
*.conf
vhosts in your Nginx servers directory - Filter domains with or without your
PRIMARY_DOMAIN
- Generate redirect rules via the
web-opt-rdr-domains
role - Optionally include a wildcard redirect template (experimental) ⭐️
- Clean up leftover configs when running in cleanup mode 🧹
All tasks are guarded by “run once” facts and MODE_CLEANUP
flags to avoid unintended re-runs or stale files.
Purpose
Ensure that any request to www.example.com
automatically and permanently redirects to https://example.com
, improving user experience, SEO, and certificate management. 🎯
Features
- Auto-Discovery: Scans your Nginx
servers
directory for.conf
files. 🔍 - Dynamic Redirects: Builds
source: "www.domain"
→target: "domain"
mappings on the fly. 🔧 - Wildcard Redirect: Includes a templated wildcard server block for
www.*
domains (toggleable). ✨ - Cleanup Mode: Removes the wildcard config file when
CERTBOT_FLAVOR
is set todedicated
andMODE_CLEANUP
is enabled. 🗑️ - Debug Output: Optional
MODE_DEBUG
gives detailed variable dumps for troubleshooting. 🐛