# Site Aliases MokoSuiteClient supports multi-domain configurations through the Site Aliases system. This allows a single Joomla installation to respond to multiple domain names, each with independent settings for offline mode, robots directives, and backend access. ## Configuration Site aliases are configured in the plugin settings under the **Site Aliases** tab. ### Primary Domain Set `primary_domain` to the canonical domain for the site (e.g. `waas.dev.mokoconsulting.tech`). This is the domain that: - Serves as the canonical URL for SEO purposes - Hosts the admin backend (when `redirect_backend` is enabled on aliases) - Is used in heartbeat registration with Grafana ### Alias Entries Add alias domains using the repeatable subform table. Each alias entry has the following options: | Field | Type | Default | Description | |---|---|---|---| | `domain` | Text | (required) | The alias domain name, e.g. `www.example.com` | | `offline` | Yes/No | No | When Yes, visitors to this alias see the offline page | | `offline_message` | Textarea | -- | Custom message displayed when the alias is offline (only shown when `offline` is Yes) | | `robots` | List | `index, follow` | Robots meta tag directive for this alias | | `redirect_backend` | Yes/No | Yes | When Yes, admin URLs (`/administrator`) on this alias redirect to the primary domain | ### Robots Options Each alias can have its own robots directive: | Value | Effect | |---|---| | `index, follow` | Normal indexing (default) | | `noindex, follow` | Do not index pages, but follow links | | `index, nofollow` | Index pages, do not follow links | | `noindex, nofollow` | Do not index or follow | | `none` | Equivalent to `noindex, nofollow` | ## How Canonical URLs Work When a request arrives on an alias domain, MokoSuiteClient: 1. Matches the `HTTP_HOST` against configured alias domains 2. Applies the alias-specific robots meta tag 3. If the alias is marked offline, renders the offline page with the custom message 4. If `redirect_backend` is enabled and the request is for `/administrator`, issues a 301 redirect to the primary domain's admin 5. Sets the canonical URL to the primary domain equivalent of the current page This prevents duplicate content issues when the same site is accessible from multiple domains. ## Grafana Monitoring for Aliases When the plugin sends a heartbeat to the Grafana monitoring receiver, it registers both the primary domain and all alias domains. The monitoring dashboard can then track health status for each domain independently. Each alias appears as a separate entry in the Grafana Infinity datasource, pointing to the same health endpoint but accessed via the alias domain. This ensures SSL certificate checks and DNS resolution are validated per-domain. ## DreamHost Mirror Setup For sites hosted on DreamHost, alias domains are typically configured as "mirror" domains in the DreamHost panel: 1. In DreamHost panel, add the alias domain as a **Mirror** of the primary domain 2. Ensure DNS for the alias domain points to the DreamHost server 3. Add the alias domain to the MokoSuiteClient Site Aliases configuration 4. Set `redirect_backend` to Yes (recommended) so admin access always uses the primary domain 5. Set `robots` to `noindex, nofollow` if the alias is a staging or preview domain DreamHost mirrors serve the same filesystem, so no additional Joomla configuration is needed beyond the MokoSuiteClient alias entry.