1. Introduction
Document Version: 1.0
βLast Updated: May 15, 2025
This guide provides instructions for setting up and managing your WordPress site using the Raff Technologies "WordPress 6.8 on Ubuntu 24.04" template.
This template deploys WordPress on an Ubuntu 24.04 Virtual Machine (VM) with Apache, MySQL, and PHP 8.3.
2. Template Overview
Component | Version | License |
WordPress | 6.8 | GPLv2 |
Web Server | Apache 2.4.x | Apache License 2.0 |
PHP Version | 8.3.x | PHP License v3.01 |
Database Server | MySQL 8.0.x | GPLv2 |
3. Prerequisites
VM Provisioned: Your WordPress VM must be created and running on Raff Technologies.
SSH Access: You need an SSH client to connect to your VM.
Connect using: Bash
ssh root@your_vm_ip_address
your_vm_ip_address
with your VM's actual IP address.Domain Name (Recommended): If you plan to use a domain name:
Point your domain's A record to your VM's IP address via your DNS provider.
Allow time for DNS propagation.
4. WordPress Installation Steps
Access the WordPress Installer:
Open a web browser and navigate to your VM's IP address (e.g.,
http://your_vm_ip_address
) or your configured domain name.You will be greeted by the WordPress installation screen.
Complete WordPress Setup:
Language Selection: Choose your preferred language.
Database Configuration:
The template should pre-configure database details in
wp-config.php
, or make necessary information available for WordPress to create it. WordPress might skip directly to site information if the connection is already established by the template.If prompted for database details (Database Name, Username, Password, Database Host, Table Prefix):
Database Name: A common default might be
wordpress
.Username: A common default might be
wordpressuser
.Password: This password may have been auto-generated by the template (check for a file like
/root/.my_sql_password
or similar if provided by Raff Technologies specific instructions) or you might need to set one up if you created the user.Database Host:
localhost
Table Prefix:
wp_
(default)
If
wp-config.php
is not writable or database/user are not pre-created by the template, you might need to:SSH into your VM.
Create a MySQL database and user: SQL
sudo mysql -u root -p # You might need root MySQL password if set CREATE DATABASE wordpress_db; -- Choose your DB name CREATE USER 'wp_user'@'localhost' IDENTIFIED BY 'your_strong_password'; -- Choose user & password GRANT ALL PRIVILEGES ON wordpress_db.* TO 'wp_user'@'localhost'; FLUSH PRIVILEGES; EXIT;
Manually create
wp-config.php
fromwp-config-sample.php
in/var/www/html/
and fill in these credentials. <!-- end list -->
Bash
cd /var/www/html/ sudo cp wp-config-sample.php wp-config.php sudo nano wp-config.php
Site Information:
Site Title: Enter the name of your website.
Username: Create an administrator username (avoid using "admin").
Password: Create a strong password for the administrator account.
Your Email: Enter your email address for administrative notifications.
Search engine visibility: Choose whether to discourage search engines from indexing the site during development.
Click "Install WordPress."
5. Configure HTTPS (SSL/TLS Certificate)
Securing your site with HTTPS is essential. Use Certbot with Let's Encrypt for free certificates.
SSH into your VM.
Install Certbot for Apache: (If not pre-installed) Bash
sudo apt update sudo apt install certbot python3-certbot-apache -y
Obtain and Install SSL Certificate: Replace
yourdomain.com
with your actual domain. Bashsudo certbot --apache -d yourdomain.com -d www.yourdomain.com
Follow the on-screen prompts:
Enter your email address for renewal notices.
Agree to the Let's Encrypt Terms of Service.
Choose whether to share your email with the EFF.
Select whether to redirect HTTP traffic to HTTPS (recommended).
Automatic Renewal: Certbot typically configures automatic renewal. You can test it with: Bash
sudo certbot renew --dry-run
6. Access Your WordPress Site
Admin Dashboard:
https://yourdomain.com/wp-admin
Website Frontend:
https://yourdomain.com
(If using IP address and skipped HTTPS: http://your_vm_ip_address/wp-admin
and http://your_vm_ip_address
)
7. Key Environment Details
Web Root Directory:
/var/www/html/
(Location of WordPress files)WordPress Configuration File:
/var/www/html/wp-config.php
(Contains database credentials and other critical settings. Handle with care.)PHP Information:
To check version:
php -v
PHP configuration file for Apache:
/etc/php/8.3/apache2/php.ini
Common PHP extensions for WordPress (e.g.,
php8.3-mysql
,php8.3-gd
,php8.3-xml
,php8.3-curl
,php8.3-mbstring
,php8.3-zip
) should be installed. Verify withphp -m
.
Database Service (MySQL):
To check service status:
sudo systemctl status mysql
MySQL configuration:
/etc/mysql/mysql.conf.d/mysqld.cnf
Web Server Service (Apache):
To check service status:
sudo systemctl status apache2
Main configuration file:
/etc/apache2/apache2.conf
Site configuration (Virtual Host):
/etc/apache2/sites-available/yourdomain.com.conf
(or000-default.conf
if not specifically set up for a domain yet). Apache'smod_rewrite
should be enabled for permalinks.
Firewall (ufw):
Default open ports: 22 (SSH), 80 (HTTP), 443 (HTTPS).
Check status:
sudo ufw status
Allow a port:
sudo ufw allow <port_number>/<protocol>
(e.g.,sudo ufw allow 80/tcp
)Enable ufw:
sudo ufw enable
8. Managing Your WordPress VM on Raff Technologies
Resource Scaling:
You can resize your VM's vCPU, RAM, and primary storage allocation via the Raff Technologies cloud control panel. A reboot may be required.
Block Storage (Volumes):
Attach additional persistent block storage volumes (up to 1000GB per volume) for data. Format as needed (EXT4/XFS for Linux).
Data Protection:
Snapshots:
Create point-in-time snapshots of your OS and data volumes from the control panel.
Use for quick rollbacks or as templates. Stored in primary infrastructure. Persist until deleted.
Backups:
Configure instant or scheduled (daily/weekly) backups for disaster recovery.
Set retention periods (10-100 days/weeks).
Networking:
Each VM has a public IPv4 address.
Private IP addressing and VPC functionality are available.
Reserved IPs can be allocated for consistent IP addresses.
9. Maintenance and Security
WordPress Updates: Regularly update WordPress core, themes, and plugins from the WordPress admin dashboard.
OS Updates: Periodically update your Ubuntu system: Bash
sudo apt update sudo apt upgrade -y
Security Best Practices:
Use strong, unique passwords for WordPress admin, database, and SSH.
Consider a WordPress security plugin (e.g., Wordfence, Sucuri).
Limit login attempts.
Regularly backup your site (see section 8).
Keep Apache, MySQL, and PHP updated via system updates.
10. Getting Support
WordPress Specific Issues: Consult the official WordPress documentation at wordpress.org/support/.
Raff Technologies Platform Issues:
Access our help portal: help.rafftechnologies.com
Contact Raff Technologies technical support for assistance with VM, network, or platform-related issues. Enterprise support options are available.