perfect-wordpress is a setup tool for WordPress on Ubuntu 24.04 and Debian 13. It helps you build a full web server stack with Nginx, PHP-FPM, MariaDB, Redis, SSL, and Fail2ban.
Use it when you want a ready WordPress server without setting up each part by hand.
- A fresh Ubuntu 24.04 or Debian 13 server
- Root access or a user with sudo rights
- A domain name that points to your server
- An active internet connection
- Basic access to your server through SSH
Visit this page to download and use the installer:
If you use the page above, follow the steps on the repository to get the latest version and run the setup on your server.
This installer sets up the main parts needed for a WordPress site:
- Nginx for the web server
- PHP-FPM for PHP support
- MariaDB for the database
- Redis for better cache handling
- SSL with Let’s Encrypt
- Fail2ban for login protection
- WordPress for the site itself
This tool fits users who want a clean server setup for:
- A personal blog
- A business site
- A local development copy of WordPress
- A small production site
- A new server that needs a standard WordPress stack
Check these items before you run the installer:
- Your domain name points to the server IP.
- Port 80 and port 443 are open.
- No other web server is already using Nginx ports.
- You can log in as a user with admin rights.
- Your server has enough disk space for WordPress, logs, and database files.
A small server can work for a basic site. A larger site needs more memory and storage.
- Open the GitHub page.
- Get the latest installer files from the repository.
- Copy the files to your Ubuntu or Debian server.
- Open a terminal on the server.
- Go to the folder where the files are stored.
- Make the script ready to run.
- Start the installer with sudo.
- Follow the prompts on screen.
- Enter your domain name when asked.
- Wait for the setup to finish.
The setup adds common server protections:
- SSL to encrypt site traffic
- Fail2ban to block repeated login abuse
- A standard server layout that keeps services separate
- Safe defaults for WordPress hosting
This helps reduce basic attack risk and keeps the server easier to manage.
When the install ends, you should be able to:
- Open your WordPress site in a browser
- Log in to the WordPress dashboard
- Change the site title and theme
- Add posts and pages
- Install WordPress plugins
If your domain and SSL are set up right, your site should load with HTTPS.
If the site does not open, check these items:
- The domain points to the right server
- Nginx is running
- PHP-FPM is running
- MariaDB is running
- DNS changes have finished
- The SSL certificate was issued for the correct domain
If WordPress loads but feels slow, Redis cache can help reduce load on the database.
This project focuses on these areas:
- bash
- debian
- letsencrypt
- lightweight
- mariadb
- nginx
- php
- redis
- ubuntu
- wordpress
- wordpress-development
- wordpress-installer
- Users who want a repeatable WordPress server setup
- System admins who want a simple install path
- Developers who need a fresh WordPress test site
- People who want a standard stack with SSL and cache support
A normal setup from this project follows a simple path:
- Download or copy the repository files
- Run the setup script
- Let it install the server packages
- Enter the site details
- Finish the WordPress install
- Open the site in a browser
- Sign in to the WordPress dashboard
After setup, the WordPress admin area lets you:
- Write posts
- Edit pages
- Change the theme
- Add users
- Install plugins
- Adjust site settings
- Manage media files
This installer builds a common Linux web stack:
- Nginx handles web traffic
- PHP-FPM runs WordPress PHP code
- MariaDB stores site data
- Redis helps with caching
- Let’s Encrypt adds HTTPS
- Fail2ban watches for bad login patterns
- Use a fresh server for the cleanest result
- Use a domain name, not just an IP address
- Keep your server time correct
- Use strong passwords for the WordPress admin account
- Save your database details in a safe place
Use the GitHub page here:
Go to that page, get the installer files, and run them on your Ubuntu 24.04 or Debian 13 server
If this is your first time setting up WordPress on a server, use this order:
- Buy or use a domain
- Point the domain to the server
- Open the GitHub page
- Download the project files
- Move them to the server
- Run the install script
- Complete the WordPress setup in the browser
- Log in and start editing your site