Addon Module The PUQ Web Hosting addon is the control centre for your whole fleet: a dashboard, the Infrastructure pages (web / mail / DNS servers, server groups, DNS zones & templates), per‑node Server actions, module Settings, the task queue and operation logs, and the Vanity widget generator. The addon is required — it owns the schema, the queue and the cron runner. Dashboard PUQ Web Hosting module WHMCS Order now | Download | Community The addon Home page is a one‑glance view of your whole hosting operation. Cards Card Shows Services Total provisioned services (View → the Services list). Servers Total servers (Manage → Infrastructure). Task Queue Tasks currently in the queue (View → Logs → Task Queue). DNS Zones Total logical DNS zones (Manage). Server Groups Shortcut to group management. Settings Shortcut to cron / retry policy / tables. Panels Server capacity — every node by type (web/mail/dns), its capacity used/max and its last sync time. A quick health view of each tier. Recent terminal errors — services whose deploy terminally failed (so you can act fast). Empty is good. Recent services — the latest provisioned services with their WHMCS and deploy status. Navigation The top bar is the same everywhere: Home — this dashboard. Services — the cross‑service admin list (search/filter, open the admin panel, redeploy/verify). Statistics — per‑domain usage (web/mail split). Infrastructure — Web / Mail / DNS Servers, Server Groups, DNS Zones, DNS Zone Templates. Logs — Task Queue, Operation Log. Settings — General, Cron, Vanity widget. Help — documentation & support links. Infrastructure: Servers PUQ Web Hosting module WHMCS Order now | Download | Community Infrastructure is where you register and monitor every node. The same servers are presented under three filtered lists — Web, Mail and DNS — based on their capabilities. Each row carries live CPU / RAM / Disk / Load bars, the panel‑OK probe, the Hestia version & OS, the group, the capacity used/max, and per‑row actions (open Server Actions, refresh status, sync, edit, delete). Capabilities decide the pools A node's Web / Mail / DNS capability flags decide which list it appears in and which roles can be placed on it. See Add web / mail / DNS servers for the editor and Deployment & Segmentation → Server segmentation for how to design your topology. DNS servers are independent and attached to groups (one server can serve many groups): Open a server → Server Actions Clicking a server's open/manage action takes you to the Server Actions page for that node — a full per‑node management console (live config, group‑config drift, PHP versions, file‑manager installs, system services, Hestia users & packages, IPs, maintenance, logs). That page is documented next. Server Actions (per node) PUQ Web Hosting module WHMCS Order now | Download | Community Opening a server gives you a per‑node console with live stat cards and a tab bar: System config · Group config · PHP · File Manager · Services · Users · Packages · IPs · Maintenance · Log. System config A live, read‑only dump of the node's hestia.conf key/value pairs — handy for confirming what a server is actually running. Group config (drift) Compares the node's live config against what its group expects, key by key, with a MATCH / drift status, and lets you Apply group config to push the managed values: This is the per‑node view of the group's managed hestia.conf (see Server‑group editor). PHP Install / remove PHP versions (5.6 – 8.4) with their FPM service, IonCube, and the Ondrej/Sury repositories — with an online gate and a recent‑tasks panel. File Manager Install and manage the two built‑in file managers per node — FileGator (Vue SPA, drag‑and‑drop) and net2ftp (native chmod UI). Each shows its installed version & URL, a custom download URL, and Reinstall / Uninstall / Refresh. Services / Users / Packages Services — system services (apache2, php‑*‑fpm, exim4, dovecot, nginx, bind9…) with state/CPU/memory/uptime and start/stop/restart. Users — every Hestia user on the node with its package, disk used/quota, bandwidth, domains, DBs and state. Packages — the Hestia hosting packages on the node (the module creates a per‑service package automatically). Maintenance & Log Maintenance — Test connection / Refresh status, rebuild commands (v‑rebuild‑* for users/web/mail/DNS), and Purge Nginx cache. Log — the operation log filtered to this one node. Server‑Group Editor PUQ Web Hosting module WHMCS Order now | Download | Community Open a group (Infrastructure → Server Groups → Open) to manage its members, its centrally‑managed hestia.conf, its DNS cluster and (for vanity groups) its sellable domains. A standard group has these tabs: Actions · General · All‑servers config · Web config · Mail config · DNS config · Variables · Standard files · DNS servers. Actions — bulk apply per role The Actions tab lists the members with their Type and Status, and pushes config/files per role: Apply Hestia config to all / web only / mail only / DNS only, Apply standard files to web, Refresh status. Applying enqueues one task per matching active node. General — name & purpose Name, description and the Group purpose (Standard vs Vanity). See Server Groups and the Vanity Mode chapter. Managed hestia.conf (role‑targeted) The module can centrally manage Hestia config keys and keep every node in sync (with drift detection on the node's Group config tab). The keys are split by role so they only ever land on the right tier: All‑servers config — applied to every node (language, theme, security/API, user policies, plugins…). Web config — web‑only (Apache/SSL/Nginx ports, web backend, sync error pages/skeleton, phpMyAdmin/phpPgAdmin aliases). Mail config — mail‑only (SMTP/IMAP/Sieve systems, antispam/antivirus, webmail, use‑server‑SMTP, notification from‑address). DNS config — Hestia‑DNS‑only (DNSSEC, DNS cluster / remote NS list). PowerDNS nodes have no hestia.conf and are skipped. Empty fields are not managed — the module only pushes the keys you fill in. Variables Group‑wide {name} key/value pairs substituted into DNS zone template records (e.g. ns1, ns2). Empty values fall through to the product's WHMCS configoptions; if both are empty the worker drops template records that reference the variable. Standard files (rebranding) Rebrandable Hestia skeleton files for web nodes — error pages (403/404/410/5xx), the default user index.html / robots.txt, the suspended‑account page, and the unassigned‑IP vhost. Each can be Overridden (your content) or Pulled from a server, with default/overridden badges. DNS servers (the cluster) Attach independent DNS servers to the group (active‑active replication) and set the group's default zone template + SOA defaults. A Vanity group shows only General / Variables / DNS servers / Vanity domains — the hosting‑config tabs are hidden. See Vanity Mode → Setting up the vanity group. DNS Zones & Templates PUQ Web Hosting module WHMCS Order now | Download | Community DNS Zones Infrastructure → DNS Zones lists every logical zone (one row per zone). The Cluster column shows the per‑DNS‑server deploy state, so you can see at a glance that a zone is live on every nameserver. A Redeploy action re‑pushes the zone. Because zones are logical and replicated, the module gives you an active‑active nameserver cluster — the same zone is served identically by every attached DNS node. DNS Zone Templates Infrastructure → DNS Zone Templates holds the record sets used when a new zone is created. You can mark one Default, add more, or Seed from file. Open a template to edit its records. Placeholders are substituted at provisioning time — {domain}, {server_ip}, {mail_server_ip}, {mail_server_hostname}, {ns1}…{ns8}, {domainkey} (DKIM), {client_id}, {service_id}, {year}, {unixtime}. The shipped Default template is a complete, modern web + mail record set: NS @ → {ns1} / {ns2} A @ → {server_ip}, CNAME www / ftp CAA for Let's Encrypt (issue / issuewild / iodef) A mail → {mail_server_ip}, CNAME webmail, MX @ TXT SPF, DMARC, DKIM (mail._domainkey → {domainkey}), TLS‑RPT MTA‑STS (mta-sts CNAME + _mta-sts TXT), autodiscover/autoconfig A record that references an empty placeholder (e.g. {domainkey} when DKIM isn't ready) is simply skipped — so partial state never produces broken records. Settings PUQ Web Hosting module WHMCS Order now | Download | Community Settings has three pages — General, Cron and Vanity widget. The General page is organised into tabs. The defaults are sensible; tune them as you scale. General The General tab itself holds API timeouts and the task retry policy (max attempts, back‑off minutes, batch size per cron run, finished‑task retention): The remaining tabs: Tab Controls Provisioning Defaults for new users — FTP root path, login shell (nologin for managed hosting), Hestia admin/SSH usernames. DNS Record TTL (default/min/max, max value length) and module‑wide SOA defaults. SSL Auto‑SSL cadence (fast‑mode count/interval, normal interval, active‑cert interval) and the Let's Encrypt rate‑limit guard. Mail & Security Webmail / phpMyAdmin URL patterns, DKIM key size, max auto‑reply length, minimum password length. Logging & Performance Log download size cap, tail line limits, mail‑log filter window, SSH heavy‑bash & apt‑lock timeouts. Integrations Overridable upstream URLs — FileGator/net2ftp zips, FTP host fallback, PHP repos (Ondrej PPA, Sury), GPG keyserver, IonCube installer. Notifications Failure‑ticket toggle (department + priority), client‑area toast/poll durations, analytics lookback windows. Maintenance The schema Check & repair tool + the deactivation data‑retention toggle. Cron The Cron page picks the cron mode (WHMCS vs Standalone), shows the crontab line to install, and lists every scheduled task with its enable/interval/last‑run/status, plus concurrency limits. Vanity widget Generates the standalone "claim your name" shop widget — see Vanity Mode → The vanity shop widget. Task Queue & Logs PUQ Web Hosting module WHMCS Order now | Download | Community Everything the module does runs through a task queue processed by the cron runner. The Logs menu exposes both the live queue and a persistent operation history. Task Queue Logs → Task Queue is the live worker view: each task's ID, service, target, action (e.g. server.collectStatus, web.addFtp), status, attempts, priority, schedule and error. Bulk controls let you tidy up: Delete success / error / cancelled, Clean all completed, and Force‑fail stuck (for tasks wedged by an unreachable node). Operation Log Logs → Operation Log is a persistent, per‑operation timeline (status collection, deploys, etc.) — useful for auditing what happened and when. Click a row to open the full detail — the operation, target, step, status and the complete message body: The retry policy (how many times and how fast failed tasks retry) and the optional support ticket on terminal failure are configured in Settings → General / Notifications, and explained in Cron & Automation → Task queue, retries & tickets. Vanity Widget PUQ Web Hosting module WHMCS Order now | Download | Community Settings → Vanity widget generates a standalone "claim your name" landing page (two files) that you can drop on any marketing domain to sell vanity slots outside the WHMCS portal. In short, you: (1) get/regenerate a shared API key, (2) pick the vanity product, (3) copy the config block into proxy.php, (4) choose the cart behaviour, then download proxy.php + index.html and upload both to each marketing domain's web root. The browser only ever talks to the widget's own proxy.php (which holds the key and caches answers) — the key never reaches the visitor. The full setup, the buyer's flow and the security model are documented in the dedicated Vanity Mode → The vanity shop widget page.