mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-10-10 10:48:10 +02:00
- Add reusable Nginx include: roles/sys-svc-proxy/templates/headers/access_control_allow.conf.j2 (dynamic ACAO/credentials/methods/headers via role vars) - Set global 'Vary: Origin' in nginx.conf.j2 to prevent cache poisoning - CSP: allow Simple Icons via connect-src when feature is enabled - Front proxy: rename vars to lowercase + flush handlers after config deploy - Desktop: gate & load Simple Icons role; inject brand logos when enabled - Bluesky + Logout: replace inline CORS with centralized include - Simpleicons: public CORS (ACAO='*', no credentials), keep GET/OPTIONS, allow headers - Taiga: adjust canonical domain to taiga.kanban.{{ PRIMARY_DOMAIN }} - LibreTranslate: remove unused images/versions keys Fixes: https://open.project.infinito.nexus/projects/cymais/work_packages/342/activity Discussion: https://chatgpt.com/share/68da5e27-ffd4-800f-91a3-0ef103058d44
Webserver
This Ansible role installs and configures Nginx as a core HTTP/stream server on Arch Linux systems. It provides:
- HTTP serving with MIME types, gzip compression, caching, and custom
nginx.conf
templating. - TCP/UDP stream support via the Nginx Streams module.
- Directory management for configuration,
sites-available
/enabled
, cache, and data. - Debugging helpers: log formats and instructions for general and detailed troubleshooting.
Features
- Package installation of
nginx
andnginx-mod-stream
. - Idempotent setup: tasks run only once per host.
- Configurable reset and cleanup modes to purge and recreate directories.
- Custom
nginx.conf
template with sensible defaults for performance and security. - Stream proxy support: includes
stream
block for TCP/UDP proxies. - Cache directory management: cleanup and recreation based on
MODE_CLEANUP
.
Debugging Tips
- General logs:
journalctl -f -u nginx
- Filter by host:
journalctl -u nginx -f | grep "{{ inventory_hostname }}"
- Enable detailed format: set
MODE_DEBUG: true
and reload Nginx.