Pular para o conteúdo principal

Installing WordPress on ZorinOS

Let's learn how to set up a WordPress site on ZorinOS, a Linux distribution that combines elegance with ease of use. WordPress is a powerful content management system (CMS) that powers a significant portion of the web.

Throughout this tutorial, we'll cover every step, from preparing your ZorinOS environment to customizing your WordPress site. We'll use command-line tools, but don't worry—I'll guide you through each command with clear explanations.

Prerequisites

Before we start, ensure you have the following:.

  • A system running ZorinOS.
  • Root or sudo user privileges to install software.
  • A non-root user with sudo privileges for security best practices.
  • A domain name and static IP address or a dynamic DNS service if you're hosting the site on a home server.
  • Internet connectivity to download WordPress and its dependencies.

Step 1: Update Your System

First things first, let's make sure your system is up to date. Open a terminal and execute the following commands:.

sudo apt update
sudo apt upgrade

This updates your package lists and upgrades the existing packages to their latest versions.

Step 2: Install LAMP Stack

LAMP stands for Linux, Apache, MySQL, and PHP. We'll install these components to create a foundation for WordPress.

  1. Install Apache:.
sudo apt install apache2


After installation, you can test if Apache is running by navigating to http://localhost or your server's IP address in a web browser. You should see the default Apache2 Ubuntu page.

  1. Install MySQL:.
sudo apt install mysql-server


During the installation, you'll be prompted to set a root password for MySQL. Choose a strong password and remember it, as we'll need it later.

  1. Secure MySQL:.

Run the mysql_secure_installation script to remove anonymous users and secure your MySQL installation.

sudo mysql_secure_installation


Follow the prompts, and remember to allow root login remotely if you're setting up a remote server.

  1. Install PHP and Extensions:.

WordPress requires PHP to run. Install PHP along with necessary extensions:.

sudo apt install php libapache2-mod-php php-mysql


To ensure PHP is working correctly, create a test file:.

echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php

Visit http://localhost/info.php in your browser. You should see a page displaying PHP information.

Step 3: Configure Apache for WordPress

We need to create a new configuration file for our WordPress site:.

sudo nano /etc/apache2/sites-available/wordpress.conf

Add the following configuration, adjusting ServerAdmin, ServerName, and DocumentRoot to match your domain and desired directory:.

<VirtualHost *:80>
ServerAdmin [email protected]
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/wordpress
<Directory /var/www/wordpress>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Enable the new site and disable the default one:.

sudo a2ensite wordpress.conf
sudo a2dissite 000-default.conf
sudo systemctl restart apache2

Step 4: Create MySQL Database for WordPress

Log in to MySQL:.

sudo mysql -u root -p

Create a database and user for WordPress:.

CREATE DATABASE wordpressdb;
CREATE USER 'wordpressuser'@'localhost' IDENTIFIED BY 'strongpassword';
GRANT ALL PRIVILEGES ON wordpressdb.* TO 'wordpressuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Replace wordpressdb, wordpressuser, and strongpassword with your chosen database name, username, and password.

Step 5: Install WordPress

  1. Download WordPress:.

Navigate to the web root directory and download the latest WordPress package:.

cd /var/www
sudo wget https://wordpress.org/latest.tar.gz


  1. Extract WordPress:.
sudo tar xzvf latest.tar.gz


  1. Move WordPress files to the web directory:.
sudo mv wordpress/* wordpress/.htaccess /var/www/wordpress


  1. Set correct ownership and permissions:.
sudo chown -R www-data:www-data /var/www/wordpress
sudo find /var/www/wordpress -type d -exec chmod 750 {} \;
sudo find /var/www/wordpress -type f -exec chmod 640 {} \;


  1. Configure WordPress:.

Copy the sample wp-config.php file and edit it:.

sudo cp /var/www/wordpress/wp-config-sample.php /var/www/wordpress/wp-config.php
sudo nano /var/www/wordpress/wp-config.php


Update the database details with the credentials you created earlier:.

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'wordpressdb');
/** MySQL database username */
define('DB_USER', 'wordpressuser');
/** MySQL database password */
define('DB_PASSWORD', 'strongpassword');
/** MySQL hostname */
define('DB_HOST', 'localhost');

Step 6: Complete WordPress Installation

Open your web browser and navigate to your domain (or server IP if you haven't set up a domain yet). You should be greeted by the WordPress installation wizard. Follow the prompts to set up your site title, admin username, and password.

Step 7: Secure Your WordPress Site

  • Install an SSL Certificate:.

Use certbot to obtain a free SSL certificate from Let's Encrypt:.

sudo apt install certbot python3-certbot-apache
sudo certbot --apache -d example.com -d www.example.com

Follow the instructions to configure HTTPS.

  • Set Up Security Plugins:.

Install plugins like Wordfence or Sucuri to enhance security.

Step 8: WordPress Configuration and Customization

Log in to your WordPress dashboard at https://mysite.com/wp-admin and configure settings such as permalinks, discussion settings, and install themes and plugins.

Step 9: Regular Maintenance

  • Update WordPress:.

Regularly update WordPress, themes, and plugins to their latest versions to ensure security and functionality.

  • Backups:.

Use plugins like UpdraftPlus to schedule regular backups of your WordPress site.

  • Monitor Performance:.

Keep an eye on your site's performance using tools like Google PageSpeed Insights and optimize as necessary.

Troubleshooting Common Issues

  • White Screen of Death:.

This could be due to a plugin or theme conflict. Access your site via FTP/SFTP, disable all plugins, and switch to a default theme to identify the issue.

  • Error Establishing Database Connection:.

Ensure your database credentials in wp-config.php are correct and that the MySQL service is running.

  • Permission Issues:.

If you encounter permission-related errors, review the permissions and ownership settings for your WordPress files and directories.

So that's if for today! You've successfully installed WordPress on ZorinOS. Regularly check for security updates and best practices to maintain a secure and efficient website.