How to self-host WordPress on a VPS (that stays fast)
Running WordPress on your own VPS removes every limit a shared host imposes: no plugin blacklists, no memory ceiling, no arbitrary inode caps. Here is the shortest reliable path to a fast, secure install.
1. Start with the right stack. On Debian or Ubuntu, a LEMP stack — Nginx, PHP-FPM and MariaDB or MySQL — is the standard. Nginx serves static files efficiently, PHP-FPM keeps PHP processes warm, and MariaDB is battle-tested with WordPress.
2. Give WordPress its own database and user. Never use root. Create a dedicated schema and a user with a long random password, and grant it rights only on that schema.
3. Install core and run the installer. Download WordPress to your web root, set the file permissions so the web server can read files but only your user can write, and complete the five-minute installer.
4. Add TLS immediately. No exceptions. Issue a certificate and redirect all HTTP to HTTPS; mixed-content warnings will otherwise cost you trust and rankings.
5. Put a cache in front of it. Page caching is the single biggest performance win for WordPress. A full-page cache turns a dynamic request into a static file for logged-out visitors, and it is the difference between a site that survives a traffic spike and one that falls over.
6. Harden it. Disable the built-in file editor, turn off directory listing, add fail2ban against login brute-force, and keep only the plugins you actually use — every plugin is extra attack surface.
7. Automate backups before you need them. Back up the database and the uploads folder, and copy both off the server. A backup that lives on the same VPS as the site is not a backup.
The most common mistakes are skipping TLS, never adding caching, and treating backups as a later problem. Fix those three and a modest VPS will comfortably serve a busy WordPress site.