# 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` and `nginx-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 `enable_debug: true` and reload Nginx.