DriversRecommendedOutdated drivers can make a good PC feel brokenScan driver issues before chasing fixes manually.Scan NowHalloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsClean PCRecommendedOne scan can reveal what keeps slowing WindowsLook for cleanup and repair opportunities.Run Scan×
VGSOURCES
Get listed

DebianPATCH 2026.10.16

How to Install WordPress with OpenLiteSpeed on a VPS (Ubuntu and Debian Guide)

By VGSources Team 12 min read

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The most reliable route is to start with a clean VPS running a supported Ubuntu or Debian release, point your domain at the server, and use the official OpenLiteSpeed one-click workflow. It installs the web server, LSPHP, a MySQL-compatible database, and WordPress in one deployment; you then finish the site in a browser and enable HTTPS. Choose the repository/manual route when you need tighter control over PHP and database packages, or use the OpenLiteSpeed CLI when you want a repeatable command-line deployment.

What you need before installing

OpenLiteSpeed (OLS) can serve WordPress efficiently, but the installation is not just a web-server package. A working site also needs a PHP runtime, the PHP database connector, a MySQL-compatible database such as MariaDB, a virtual host, DNS, and TLS. Prepare each dependency before running an installer so you do not end up with a server that responds on its IP address but cannot complete WordPress setup.

As an Amazon Associate I earn from qualifying purchases.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Use a supported, maintained VPS image

OpenLiteSpeed documentation lists support for these operating-system families and releases:

Operating-system family Documented releases Selection guidance
Debian 11, 12, 13 Choose a release that your VPS provider still maintains and that receives security updates.
Ubuntu 22, 24, 26 Use the supported LTS or provider image appropriate for your deployment date.
CentOS and compatible derivatives 8, 9, 10 Confirm that the particular derivative and image remain maintained; an OLS compatibility listing does not make an end-of-life image safe.

Start with a clean installation rather than a VPS that already has another web server, control panel, or database listening on the same ports. Existing services are the most common reason an automated deployment cannot bind its listeners.

Point DNS at the VPS first

Create the DNS record for the site and point the domain to the VPS address before requesting a certificate. DNS propagation can take time, and ACME validation cannot succeed while the hostname still resolves somewhere else. If you will serve more than one hostname, plan each name and its virtual-host mapping before installation.

Check the required ports

Keep ports 80 (HTTP), 443 (HTTPS), and 7080 (the OLS WebAdmin console) available. The OLS CLI specifically warns that ports 80, 443, and 7080 must be free or otherwise accounted for. Check both the VPS firewall and any provider-level firewall rules. You can restrict WebAdmin access to your administration network after the initial setup, but do not accidentally block it before you have saved the generated credentials.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Choose an installation path

There are three supported ways to put WordPress on OLS. The right choice depends on whether speed, repeatability, or package-level control matters most.

Method How it works Repeatability PHP and database control HTTPS and security options Best fit
One-click script Runs a bundled OLS deployment and exposes WordPress, database, PHP, ACME, OWASP, and Fail2Ban options. High for standard clean-server builds. Guided choices; less granular than assembling packages yourself. ACME and security flags are available during the run. A first WordPress site or a fast, consistent deployment.
Repository/manual Bootstraps the LiteSpeed repository, installs OLS, then installs a selected LSPHP runtime and its MySQL connector. High when scripted by you. Most control over package and runtime selection, subject to OS availability. Configured separately through the virtual host, listener, and ACME or manual certificate settings. Administrators who need explicit package choices.
OLS CLI Creates a site from a single command and can request Let’s Encrypt with --le. Very high for repeatable site creation. Controlled by the CLI’s supported options and installed packages. Certificate automation is built into the site-creation command; security options are exposed by the CLI. Multiple sites, scripted provisioning, or infrastructure-as-code workflows.

All three methods still require a browser pass through WordPress’s installer. Automation can create the server-side pieces, but it does not replace choosing the site title, administrator account, and database connection in WordPress.

Recommended: deploy with the OLS one-click script

The one-click script is the shortest path on a clean VPS because it can install the web server, PHP runtime, database components, and WordPress together. OpenLiteSpeed describes the script as supporting all of its supported operating systems and exposing several deployment options.

1. Provision and prepare the server

  1. Create a new VPS with a supported Ubuntu or Debian image (or another supported, currently maintained distribution from the table above).
  2. Log in with an account that can install system packages and configure services.
  3. Point the domain’s DNS record to the VPS address.
  4. Confirm that ports 80, 443, and 7080 are available and allowed through both firewall layers.
  5. Remove or stop an existing web server if it already owns ports 80 or 443. Do not run the OLS installer over an unknown control panel stack.

2. Run the WordPress deployment

Run the official OLS one-click script and select the WordPress option -W. The script presents choices for the database, PHP runtime, ACME certificate automation, OWASP rules, and Fail2Ban. Read each prompt instead of accepting an option simply because it is available: the correct PHP build and security profile depend on your operating-system image and the other software you intend to run.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

For a site that should be configured with LiteSpeed Cache as part of the deployment, use the documented --wordpressplus <site-domain> mode. Replace the angle-bracketed value with the real hostname; it is a shell argument, not text to enter literally.

3. Let the script install the database and PHP pieces

WordPress needs a PHP runtime with the database extension enabled. The one-click workflow can install the required MySQL-compatible database and PHP components together, but you should still note which LSPHP version it selected. Available LSPHP and MariaDB choices vary by operating-system release, so do not assume that a version offered on one image will be present on another.

4. Complete WordPress in the browser

When the script reports that the site is ready, open the domain in a browser. The -W workflow explicitly requires this browser completion step. Enter the database name, database user, database password, site title, administrator username, and administrator password requested by WordPress. Use a unique administrator username and a long password; these credentials control the application even if the server itself is hardened.

If the domain does not load yet, use the VPS address only for diagnosis and return to the hostname after DNS resolves correctly. Certificate issuance and the final virtual-host match depend on the hostname, not merely on the server’s IP address.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Manual installation from the LiteSpeed repository

The repository path is preferable when you need to decide exactly which LSPHP branch and database packages are installed or when you are integrating OLS into an existing provisioning system. It has more moving parts, so keep a written record of every package and virtual-host value.

1. Bootstrap the repository

Use the LiteSpeed repository bootstrap procedure for the distribution and release on your VPS. The bootstrap adds the package source and signing configuration needed to obtain OpenLiteSpeed and LSPHP. Use the procedure that matches the operating system; do not apply a Debian repository setup to Ubuntu or an RPM-based derivative.

2. Install OpenLiteSpeed

After the repository is available, install the openlitespeed package with the operating system’s package manager. Keep the installation on the clean server prepared earlier so the OLS listeners can bind to ports 80, 443, and 7080.

3. Install LSPHP and the MySQL connector

Select an LSPHP version offered for your OS, then install that runtime and its matching MySQL connector package. The connector is essential: a PHP interpreter without it cannot communicate with MariaDB or another MySQL-compatible server during WordPress installation. Because package names and available versions are OS-dependent, use the matching package names shown by the repository for your selected LSPHP branch rather than copying a package name from a different release.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

4. Retrieve the WebAdmin password

OLS generates a WebAdmin password during installation. The randomly generated password is stored in:

/usr/local/lsws/adminpasswd

Read that file locally on the VPS, save the credential in a password manager, and use it to reach the WebAdmin console on port 7080. Change the credential through the administrative interface after the initial login if your operating procedure requires it. Do not publish the file contents or leave them in shell history.

5. Start the database service and create WordPress credentials

Install and initialize MariaDB or another supported MySQL-compatible database, then create a database and a dedicated database user for this WordPress site. Keep the database name, username, password, and host value together; you will enter them in the browser installer. A dedicated user makes it possible to limit the site’s database access instead of using a global administrative account.

Configure the virtual host and domain

OLS must know which files and PHP handler belong to the domain. In WebAdmin or your chosen configuration workflow, create a virtual host for the site, assign its document root to the WordPress files, and map the hostname to the appropriate listener. The exact labels vary by OLS version, but the required relationship is the same: the domain’s request reaches a listener, the listener selects the matching virtual host, and that virtual host serves WordPress through the selected LSPHP handler.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Map HTTP and HTTPS listeners

  • Map the hostname on the HTTP listener so the domain can answer on port 80 and ACME HTTP validation can reach the server when that method is used.
  • Map the same hostname on the HTTPS listener for port 443.
  • Set the WordPress document root and PHP handler on the virtual host rather than relying on an unrelated default site.
  • Reload or restart OLS only after validating the configuration, then test the hostname from an external network.

Enable HTTPS with ACME or a manual certificate

HTTPS is part of the site configuration, not an optional browser decoration. You can request a Let’s Encrypt certificate through the one-click workflow or the CLI, or provide certificate files manually.

Automated certificate issuance

The CLI creates a WordPress site and requests Let’s Encrypt when you run:

ols site create example.com --wp --le

Replace example.com with the hostname that already resolves to this VPS. Ensure port 80 or the validation method selected by the tool is reachable from the public internet. The one-click script exposes ACME options as well, so choose that option during the -W deployment when you want the script to configure the certificate.

Manual certificate paths

For a certificate you manage yourself, set the private-key and certificate paths at the virtual-host level. Keep the HTTPS listener’s SSL settings configured as well: OLS documentation notes that virtual-host SSL values override listener values. This precedence matters when a listener appears correctly configured but the browser still receives the wrong certificate; inspect the virtual host selected for the hostname before changing global listener settings.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

After enabling TLS, test both forms of the address. Confirm that the HTTPS hostname presents the expected certificate and that an HTTP request follows the redirect behavior you intend. Make this test before turning on HSTS, because HSTS tells browsers to use HTTPS for future requests and can make a mistaken certificate or hostname configuration harder to recover from.

Finish the WordPress setup

Open the HTTPS hostname and complete the WordPress installer. Supply the database details created during the manual workflow, or the credentials generated by the one-click deployment. Then set:

  • The site title and administrator email address.
  • A unique administrator username and a strong password.
  • The preferred site URL, using the final HTTPS hostname rather than a temporary IP address.

After the installer succeeds, sign in to the WordPress dashboard and load the public home page in a separate browser window. Check that CSS, images, permalinks, and an administrator login all work before adding themes or plugins. This separates a server configuration problem from a later application change.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Apply security controls deliberately

OLS deployment tools expose several hardening features, but enabling every option without checking the application can create difficult-to-diagnose failures. Turn on only the controls appropriate to the site and record what you changed.

OWASP rules

OWASP rules can filter common malicious request patterns at the web-server layer. Enable them through the one-click script or CLI when the site’s plugins and APIs are compatible, then inspect the logs for blocked legitimate requests. If a WordPress editor, webhook, or API endpoint stops working after activation, identify the specific rule and adjust that rule rather than disabling all request filtering without review.

Fail2Ban

Fail2Ban can react to repeated authentication failures by applying temporary bans. Select the jails and log sources that match your OLS and SSH configuration. Verify that your own administration address is not blocked during testing, and keep an out-of-band console path available in case a rule is too aggressive.

HSTS

Enable HSTS only after HTTPS works consistently for every hostname and asset the site uses. HSTS causes compliant browsers to insist on HTTPS, so a certificate, redirect, or subdomain mistake can persist in a visitor’s browser until the policy expires. Start with a policy appropriate to your deployment rather than immediately applying the most restrictive setting.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

reCAPTCHA and namespace isolation

Use reCAPTCHA where the WordPress forms or login flows justify an additional challenge, and use namespace isolation where the server layout and OLS version support it. These controls solve different problems: reCAPTCHA addresses automated submissions, while namespace isolation limits how a site is separated from other processes. Neither replaces timely operating-system, OLS, PHP, WordPress, and plugin updates.

Rank #4
Teacher Record Book
  • Keep track of everything from attendance to test scores
  • Spiral bound
  • Measures 8-1/2" x 11"

Verification checklist

Run these checks before calling the installation complete:

  • The domain resolves to the VPS address from an external network.
  • Port 80 serves the intended virtual host and does not show a default OLS page.
  • Port 443 serves the correct certificate for the hostname.
  • HTTP-to-HTTPS behavior matches your policy.
  • WordPress can connect to the database and load the dashboard.
  • PHP pages execute through the selected LSPHP version instead of downloading as text or returning a handler error.
  • The WebAdmin console is reachable on port 7080 from an authorized administration network.
  • Logs show no repeated listener, PHP-handler, database, or certificate errors after a test page load.

Troubleshooting the common failure points

The installer cannot bind to a port

Check which service owns ports 80, 443, or 7080 and stop, reconfigure, or account for it before rerunning the installer. The CLI’s port warning is not cosmetic: a deployment cannot serve traffic through a listener that another process already occupies.

The domain shows the wrong site

Verify DNS first, then inspect the listener-to-virtual-host mapping. A default OLS page usually means the request reached the server but did not match the intended hostname or virtual host. Check both the HTTP and HTTPS mappings; configuring only one listener can make the site appear correct on one protocol and incorrect on the other.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

WordPress reports a database or PHP extension error

Confirm that the database service is running, the credentials match exactly, and the selected LSPHP installation includes its MySQL connector. The available runtime and connector packages depend on the OS release, so install the connector that corresponds to the LSPHP branch actually selected on this VPS.

Let’s Encrypt validation fails

Confirm that the hostname resolves to this VPS, port 80 or the selected ACME challenge path is reachable, and the virtual host answers the requested name. If another service or firewall intercepts the request, ACME cannot validate the domain. Correct DNS and listener mapping before attempting another certificate request.

The certificate is valid but the browser still warns

Inspect the certificate and key paths on the virtual host, not only the listener. Virtual-host SSL settings override listener settings, so a stale virtual-host path can supersede a corrected global configuration. Also check that visitors are using the exact hostname covered by the certificate.

The browser installer was skipped

Return to the site’s hostname and complete the WordPress setup screen. The one-click -W process does not create the application administrator through the shell alone; the browser step is required to finish the installation.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Which method should you use?

Use the one-click script for the first site on a clean VPS when you want OLS, LSPHP, the database, ACME, and optional security controls assembled in one guided run. Use the repository/manual route when package versions, database layout, or configuration ownership must be explicit. Use the CLI command when you will create the same kind of site repeatedly or need a deployment that can live in a provisioning script.

Whichever path you choose, the dependable sequence is the same: supported OS, clean ports, correct DNS, PHP plus its database connector, a mapped virtual host, HTTPS, browser-based WordPress completion, and a final security and log review.

Quick Recap

SaleBestseller No. 1
SaleBestseller No. 3
Bestseller No. 4
Teacher Record Book
Teacher Record Book
Keep track of everything from attendance to test scores; Spiral bound; Measures 8-1/2" x 11"
$4.89

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

DebianLet's EncryptLSPHPMariaDBOpenLiteSpeedServer securityUbuntuVPSWordPress

Leave a reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Recommended PC Tool
Recommended PC Tool
PC Slower Than It Used to Be?Free scan - under a minute
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.