Getting Started

Configuration

Administration

Modules

Templates

Integrations

Development

Installation on Ubuntu Debian Apache2 Server

Pre-installation Requirements

Ensure your hosting environment meets the minimal software requirements.

System Preparation

Update and Upgrade Packages

Run these commands to update and upgrade all packages:

    sudo apt-get update
    sudo apt-get upgrade

Install PHP and Necessary Extensions

    sudo apt-get install php php-curl php-gd php-mbstring php-json php-fileinfo php-zip php-openssl php-exif php-mysql

Installing and Configuring MariaDB

    sudo apt-get install mariadb-server

After installing, use the commands below to stop, start, and enable the MariaDB service to always start up when the server boots:

    sudo systemctl stop mariadb.service
    sudo systemctl start mariadb.service
    sudo systemctl enable mariadb.service

After that, run the commands below to secure the MariaDB server by creating a root password and disallowing remote root access:

    sudo mysql_secure_installation

When prompted, answer the questions below by following the guide:

  • Enter current password for root (enter for none): Just press the Enter
  • Set root password? [Y/n]: Y
  • New password: Enter password
  • Re-enter new password: Repeat password
  • Remove anonymous users? [Y/n]: Y
  • Disallow root login remotely? [Y/n]: Y
  • Remove test database and access to it? [Y/n]: Y
  • Reload privilege tables now? [Y/n]: Y

Restart MariaDB server:

    sudo systemctl restart mariadb.service

Create the Database

To log on to the MariaDB database server, run the commands below:

    sudo mysql -u root -p

Run these commands to create the database, create a user, and give that user access to the database:

    CREATE DATABASE database_name;
    CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
    GRANT ALL ON csdb.* TO 'username'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
    FLUSH PRIVILEGES;
    EXIT;

Creating a Virtual Host

Create a directory for your UNA site:

    sudo mkdir /var/www/your_site_domain
    sudo chown -R una:una /var/www/your_site_domain
    sudo chmod -R 755 /var/www/your_site_domain

Create a virtual host configuration file:

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

Copy and paste the following lines into the conf file:

    <VirtualHost *:80>
        ServerAdmin webmaster@localhost
        ServerName your_site_domain
        DocumentRoot /var/www/your_site_domain
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

        <Directory /var/www/your_site_domain>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride All
            Order allow,deny
            allow from all
            Require all granted
        </Directory>
    </VirtualHost>

Enable the new virtual host and disable the default one:

    sudo a2ensite your_site_domain.conf
    sudo a2dissite 000-default.conf
    sudo apache2ctl configtest
    sudo systemctl restart apache2

Installing Let's Encrypt SSL

    sudo add-apt-repository ppa:certbot/certbot
    sudo apt install python-certbot-apache
    sudo nano /etc/apache2/sites-available/your_site_domain.conf
    sudo apache2ctl config
    sudo systemctl reload apache2
    sudo certbot --apache -d your_site_domain

This will install an SSL certificate to your system.

Installing UNA

Upload the UNA .zip archive to your server and extract it to

/var/www/your_site_domain

Finalizing Installation

Set Permissions Ensure your directory and files have the correct permissions:

   sudo chmod -R 755 /var/www/your_site_domain
   sudo chmod -R 777 /var/www/your_site_domain/inc
   sudo chmod -R 777 /var/www/your_site_domain/cache
   sudo chmod -R 777 /var/www/your_site_domain/cache_public
   sudo chmod -R 777 /var/www/your_site_domain/tmp
   sudo chmod -R 777 /var/www/your_site_domain/logs
   sudo chmod -R 777 /var/www/your_site_domain/storage
   sudo chmod +x /var/www/your_site_domain/plugins/ffmpeg/ffmpeg.exe
  • Update .htaccess for PHP version if needed.
  • Navigate to your site URL and follow the UNA installation steps.

Post-installation Steps

Configure a cron job as instructed by the installation wizard to ensure UNA's scheduled tasks are performed correctly.

Run the code and paste the cron job from the browser to the crontab:

    crontab -e

Congratulations

You've successfully installed UNA on your Ubuntu Debian server with Apache2. Proceed to UNA Studio to customize your site further.