دامنهٔ اختصاصی دامنهای است که به وبلاگی افزوده شده؛ مانند `personal-domain.com`. هر وبلاگ میتواند دامنهٔ اختصاصی خودش را داشته باشد.
هنگام اجرای ویترو بلاگ پشت پراکسی معکوس:
TLS_MODE=external بگذارید؛ دامنهٔ برنامه روی درگاه :80 گوش میدهد و پراکسی درخواست HTTPS را به آن میفرستد. اگر میخواهید خود ویترو بلاگ TLS را مدیریت کند، از TLS_MODE=auto استفاده کنید و ترافیک TCP درگاههای ۸۰ و ۴۴۳ را به آن بفرستید (درگاه ۸۰ برای ACME لازم است). برای گواهی و کلید خودتان TLS_MODE=manual را انتخاب کنید. جزئیات در حالت TLS است.TRUSTED_PROXIES قرار دهید؛ بهطور پیشفرض همهٔ محدودههای IP خصوصی مورداعتمادند.برای تنظیم بر اساس TLS، درگاه ۸۰ باید برای چالش ACME به ویترو بلاگ فرستاده شود. در حالت TLS_MODE=auto، TCP درگاه ۴۴۳ را بدون خاتمهٔ TLS عبور دهید. در حالت TLS_MODE=external، TLS دامنهٔ برنامه را در Traefik خاتمه دهید، اما ترافیک TCP دامنههای اختصاصی را در ۴۴۳ مستقیم عبور دهید. برای این حالت، تنظیم ACME باید از tlschallenge استفاده کند؛ httpchallenge با چالش دامنههای اختصاصی تداخل دارد.
درگاه ۸۰، HTTP معمولی است و با reverse_proxy قابلارسال است. برای عبور بیتغییر ترافیک TLS درگاه ۴۴۳، Caddy به افزونهٔ layer4 نیاز دارد که با xcaddy ساخته میشود:
xcaddy build --with github.com/mholt/caddy-l4در حالت TLS_MODE=auto دامنهٔ برنامه و دامنههای اختصاصی را بدون خاتمهٔ TLS به ویترو بلاگ بفرستید. در حالت external، SNI دامنهٔ برنامه را تشخیص دهید و TLS آن را در Caddy خاتمه دهید؛ بقیهٔ دامنهها باید بدون تغییر به ویترو بلاگ برسند.
برای عبور TLS درگاه ۴۴۳ بدون خاتمه، NGINX به ماژول stream با --with-stream و --with-stream_ssl_preread_module نیاز دارد. تصویر رسمی Docker این ماژولها را دارد. درگاه ۸۰ HTTP است و در بخش http عادی بهصورت پراکسی عبور داده میشود.
در TLS_MODE=auto، ویترو بلاگ TLS همهٔ دامنهها را خاتمه میدهد و NGINX همهٔ TCP درگاه ۴۴۳ را مستقیم عبور میدهد. در TLS_MODE=external، NGINX TLS دامنهٔ برنامه را خاتمه میدهد و دامنههای اختصاصی را بهصورت TCP خام عبور میدهد؛ گواهی آنها همچنان توسط ویترو بلاگ صادر میشود.