WonderCMS is a simple, open-source flat-file CMS that doesn’t require a database. It’s ideal for users who want a lightweight and easy-to-install CMS solution. You can use WonderCMS to create personal websites, small business websites, or other simple web projects with minimal setup.

What Can You Do with WonderCMS?

  • Simple Websites: Quickly build and manage personal or small business websites.
  • No Database Required: Uses flat-file storage, reducing complexity and enhancing performance.
  • Customizable: Supports themes and plugins to extend functionality.
  • Secure: Frequently updated to ensure security.

Step 1: Create an Instance on Cloud.shape.host

Step 1.1: Access the Dashboard

  1. Log in to Cloud.shape.host.
  2. Click Create, and select Instances.
Shape.host Resources dashboard with Create > Instance highlighted.

Step 1.2: Choose a Datacenter Location

Select a datacenter closest to your target audience, such as New York, London, or Frankfurt.

Shape.host instance form with the data center location selector highlighted.

Step 1.3: Select a Plan

Choose a plan based on the resource needs of your WonderCMS installation: Standard, CPU-Optimized, or Memory-Optimized.

Step 1.4: Select an Operating System

Select AlmaLinux 9 as your OS for installing WonderCMS.

Shape.host instance form with the operating system image selector highlighted.

Step 1.5: Configure and Launch

  1. Set the Network Type and Authentication Method (SSH key or password).
  2. Click Create Instance.
Shape.host instance form with the Create Instance button highlighted.

Step 1.6: Locate your Instance’s IP

Shape.host Resources dashboard with the server IP address highlighted.

Step 1.7: Access Your Instance

  • SSH (for Linux/macOS):
   ssh root@<your-instance-ip>

Replace <your-instance-ip> with the server’s public IP.

  • PuTTY (for Windows):
    Download PuTTY, enter the public IP, and click Open.

Step 2: Install Apache, PHP, and Other Dependencies

Install Apache, PHP, and other required packages:

dnf install httpd php php-common php-curl php-opcache php-xml php-gd php-mbstring php-zip php-json wget unzip git
Terminal showing DNF/YUM package management commands and output.

Step 3: Configure PHP

Open the PHP configuration file and modify the following settings:

nano /etc/php.ini

Update the values:

date.timezone = Europe/Amsterdam
memory_limit = 512M
upload_max_filesize = 128M
post_max_size = 128M
max_execution_time = 300
max_input_vars = 5000

How to Save and Quit Nano:

  • Press CTRL + O to save the file.
  • Press Enter to confirm.
  • Press CTRL + X to quit the Nano editor.

Step 4: Start Apache and Firewall

Enable and start the Apache service:

systemctl enable --now httpd
systemctl status httpd
Terminal showing systemd service management commands or output.

Install and configure the firewall:

dnf install firewalld
systemctl unmask firewalld
systemctl start firewalld
firewall-cmd --add-service={http,https} --permanent
firewall-cmd --reload
firewall-cmd --list-all
Terminal showing systemd service management commands or output.

Step 5: Download and Install WonderCMS

Navigate to the web directory and download WonderCMS:

cd /var/www/
wget https://github.com/WonderCMS/wondercms/releases/download/3.4.3/wondercms-343.zip
unzip wondercms-343.zip -d .
Terminal showing file and directory setup commands.
Terminal showing file download commands and transfer output.
Terminal showing unzip commands or output during Download and Install WonderCMS.

Set proper ownership and permissions:

chown -R apache:apache /var/www/wondercms
chmod -R 755 /var/www/wondercms
Terminal showing file ownership or permission commands.

Step 6: Configure Apache for WonderCMS

Create a new virtual host configuration:

nano /etc/httpd/conf.d/wondercms.conf

Insert the following configuration:

<VirtualHost *:80>
 ServerName almalinux.shape.host
 DirectoryIndex index.php
 DocumentRoot /var/www/wondercms

 ErrorLog /var/log/httpd/almalinux.shape.host-error.log
 CustomLog /var/log/httpd/almalinux.shape.host-access.log combined

 <Directory /var/www/wondercms>
 Options FollowSymLinks
 AllowOverride All
 Require all granted
 </Directory>
</VirtualHost>
Terminal showing web server configuration text.

How to Save and Quit Nano:

  • Press CTRL + O to save the file.
  • Press Enter to confirm.
  • Press CTRL + X to quit the Nano editor.

Test and restart Apache:

apachectl configtest
systemctl restart httpd
Terminal showing an Apache configuration test.
Terminal showing an Apache configuration test.

Step 7: Install Certbot and Secure with SSL

Install Certbot and the Apache plugin:

dnf install epel-release
dnf install certbot python3-certbot-apache
Terminal showing DNF/YUM package management commands and output.
Terminal showing DNF/YUM package management commands and output.

Generate an SSL certificate with Certbot:

certbot --apache --agree-tos --no-eff-email --redirect --hsts --staple-ocsp --email contact@shape.host -d almalinux.shape.host
Terminal showing Certbot certificate commands and messages.

Step 8: Access WonderCMS from Your Browser

Once the SSL certificate is installed and everything is configured, you can access your WonderCMS installation by navigating to the following URL in your web browser:

https://almalinux.shape.host

You should now see the WonderCMS homepage. From here, you can begin managing your content and making updates.


Step 9: Access Your WonderCMS Website

  1. Open your web browser and navigate to your domain, for example: https://almalinux.shape.host.
  2. You will be greeted with the WonderCMS welcome screen, showing the initial login password.
WonderCMS default welcome page with a login link.

Step 10: Login to WonderCMS

  1. Click the “Click Here to Login” button.
  2. You will be redirected to the login page, where you need to input the default password provided on the welcome page.
WonderCMS password login form.

Step 11: Configure Admin Settings

  1. After logging in, navigate to the Settings/Plugins.
  2. You can customize settings, such as changing the Admin Login URL or updating the password.
  3. Remember to save your new configuration and keep your login URL secure.
WonderCMS administrator security settings dialog.

You have successfully installed WonderCMS on AlmaLinux 9 using Apache and secured it with Let’s Encrypt SSL. WonderCMS is now ready to be accessed via your domain, providing a lightweight and efficient CMS for your website.

For reliable performance, consider using Shape.Host’s Linux SSD VPS for hosting your WonderCMS instance.