WordPress Multisite 6.9.4 on Ubuntu 24.04 LTS by cloudimg. Multi-site network in subdirectory mode, IP-portable via sunrise.php + dynamic Host-header. Apache 2.4 + MySQL 8 + PHP 8.3. Per-VM admin password rotated at first boot. 24/7 expert support.
## WordPress Multisite 6.9 on Ubuntu 24.04 by cloudimg
WordPress Multisite 6.9.4 on Ubuntu 24.04 LTS, purpose-built for Microsoft Azure and maintained by cloudimg. Multisite Network mode in subdirectory layout — one WordPress install hosting multiple sites that share themes/plugins but keep separate content, users, and admin areas. Ideal for agencies, universities, intranets, and anywhere multiple distinct sites benefit from a shared codebase and central admin.
Why Choose cloudimg?
* 24/7 Expert Support — guaranteed 24-hour response, 1-hour critical-issue average. Contact support@cloudimg.co.uk
* IP-Portable Multisite — the captured image works at any public IP, DNS name, or CDN-fronted hostname. Move the VM, change the public IP, attach Front Door — the multisite Just Works without manual reconfiguration.
* Production-Ready from Launch — security-patched, validated, pre-configured before publication
* Azure-Native Integration — Azure Linux Agent, cloud-init, Gen2 Hyper-V boot
* Per-VM Admin Credential Generation — admin password rotated uniquely at first boot, written to `/etc/cloudimg-credentials.txt` (mode 0600). Every customer VM has a unique admin password.
How the IP-Portable Multisite Works
WP Multisite typically requires the canonical hostname to be known at install time and baked into `wp_blogs.domain` + `wp_options.siteurl/home` + `DOMAIN_CURRENT_SITE`. cloudimg solves this with three layers:
* `wp-config.php` defines `WP_HOME` and `WP_SITEURL` from `$_SERVER['HTTP_HOST']` per request
* `wp-content/sunrise.php` overrides `$current_site->domain` and `$current_blog->domain` from `HTTP_HOST` before WP picks the network/site
* `wp-content/mu-plugins/cloudimg-host-rewrite.php` filters `pre_option_siteurl`, `pre_option_home`, `site_url`, `home_url`, `network_site_url`, `rest_url`, `admin_url`, `login_url`, `logout_url` to dynamically rewrite the host portion to the live `HTTP_HOST`
What is Included
* WordPress 6.9.4 from `downloads.wordpress.org/release/wordpress-6.9.tar.gz`
* LAMP stack — Apache 2.4 + MySQL 8.0 + PHP 8.3 from Ubuntu noble universe (no third-party repos)
* Multisite Network in subdirectory mode (`SUBDOMAIN_INSTALL=false`)
* Apache mod_rewrite enabled with multisite-specific RewriteRules in the vhost
* WP-CLI 2.x for programmatic admin user creation + multisite-install
* Per-VM MySQL root + WP DB + WP admin passwords rotated at firstboot
* Document root `/var/www/html/wordpress`; vhost at `/etc/apache2/sites-available/wordpress.conf`
* Ubuntu 24.04 LTS base with latest security patches at build time
Use Cases
* Multi-tenant blog network (one install, many sites)
* Multi-brand corporate site (each brand a sub-site under a shared codebase)
* University departmental intranet (one site per department)
* Agency portfolio platform (one site per client)
* Course/cohort sites (each cohort a sub-site)
Technical Specifications
* Operating System: Ubuntu 24.04 LTS (Noble Numbat)
* WordPress Version: 6.9.4
* Web Server: Apache 2.4 + mod_rewrite
* Database: MySQL 8.0 (Ubuntu noble universe)
* PHP: 8.3 with mysqli, curl, gd, mbstring, xml, zip, imagick
* Default Port: 80
* Default Admin User: admin (per-VM password)
* Network Mode: subdirectory (Add Site → /
* Service Management: systemd (apache2.service, mysql.service, wordpress-multisite-firstboot.service)
* Recommended Size: Standard_B2s for development; Standard_D4s_v3 or larger for production multi-tenant traffic
* VM Generation: Hyper-V Gen2 with UEFI boot
Adding More Sites
From Network Admin → Sites → Add New, enter a path slug (e.g. `marketing`). The new site is immediately reachable at `http://
Production Hardening
For TLS, terminate at Azure Application Gateway or Front Door (the mu-plugin handles whatever scheme/host the proxy forwards). For email, configure SMTP via a plugin or `wp_mail` filter. Customers can switch to subdomain multisite (`SUBDOMAIN_INSTALL=true`) by editing `wp-config.php` and configuring wildcard DNS — guide includes the steps.
Support
cloudimg provides 24/7/365 expert technical support. Contact support@cloudimg.co.uk or visit www.cloudimg.co.uk.