How to Install OJS 3.3 on Ubuntu 24.04

How to Install OJS 3.3 on Ubuntu 24.04

Bitnesia Software Mar 25, 2026 119 ID

In the modern academic world, research publication is no longer a manual process. Efficiency, transparency, and accessibility are the primary keys. Open Journal Systems (OJS) has become the gold standard for educational institutions and research agencies worldwide to manage scientific journals professionally.

If you plan to build a credible scientific publication platform, this article will guide you step-by-step through installing OJS using the LAMP stack (Linux, Apache, MariaDB, PHP) on an Ubuntu server.

What is OJS?

Open Journal Systems (OJS) is an open-source journal management and publishing application developed by the Public Knowledge Project (PKP). OJS is designed to streamline the entire scientific publishing workflow, from manuscript submission and peer-review to editing, archiving, and online journal indexing.

Key Features of OJS

  • Integrated Workflow: Manages manuscripts from authors to editors and reviewers until publication.
  • Extensive Indexing: Supports metadata protocols like OAI-PMH to facilitate indexing in Google Scholar or DOAJ.
  • Multi-Journal Management: A single OJS installation can be used to manage multiple journals simultaneously.
  • Notification System: Automatic email delivery to all parties involved in the publishing process.
  • Flexible Plugins: Supports various plugins for statistics, citations, and themes.

System Prerequisites

Before starting, ensure your Ubuntu LTS server meets the following specifications:

  • RAM: Minimum 2GB.
  • Web Server: Apache or Nginx.
  • Database: MariaDB or MySQL.
  • PHP: Version 8.3.

Step 1: Server Preparation

First, we need to update the system and install the basic web server components.

Update the system:

sudo apt update
sudo apt upgrade -y

Install Apache and Certbot:

sudo apt install apache2 certbot python3-certbot-apache -y

Install the ondrej/php repository:

sudo add-apt-repository ppa:ondrej/php -y
sudo apt upgrade -y

Install PHP 8.3 and OJS supporting extensions:

sudo apt install libapache2-mod-php8.3 php8.3 php8.3-cli php8.3-common \
  php8.3-apcu php8.3-mbstring php8.3-gd php8.3-intl \
  php8.3-xml php8.3-soap php8.3-bcmath php8.3-mysql php8.3-zip \
  php8.3-curl php8.3-tidy php8.3-imagick -y

Install MariaDB:

sudo apt install mariadb-server -y

Step 2: Creating the Database

Log in to MariaDB:

sudo mysql

Create the database and user:

CREATE DATABASE ojs_db;
CREATE USER 'ojs_user'@'localhost' IDENTIFIED BY 'strongpassword';
GRANT ALL PRIVILEGES ON ojs_db.* TO 'ojs_user'@'localhost';
FLUSH PRIVILEGES;
exit

Step 3: Download and Prepare OJS Files

We will download the stable version of OJS 3.3:

wget https://pkp.sfu.ca/ojs/download/ojs-3.3.0-22.tar.gz

Extract the file:

tar xzvf ojs-*.tar.gz

Create the working directory and move the files:

sudo mkdir -p /var/www/journal.yourdomain.com/files
sudo mv ojs-3.3.0-22 /var/www/journal.yourdomain.com/ojs

Set directory ownership:

sudo chown -R www-data:www-data /var/www/journal.yourdomain.com

Step 4: Configure Apache Virtual Host

This step is crucial so the server knows which folder to open when the domain journal.yourdomain.com is accessed.

Create the virtual host configuration file:

sudo nano /etc/apache2/sites-available/journal.yourdomain.com.conf

Enter the following configuration:

<VirtualHost *:80>
    ServerName journal.yourdomain.com
    DocumentRoot /var/www/journal.yourdomain.com/ojs
    <Directory /var/www/journal.yourdomain.com/ojs>
        Options -Indexes +FollowSymLinks +MultiViews
        AllowOverride All
        Require all granted
    </Directory>
    ErrorLog /var/log/apache2/journal.yourdomain_error.log
    CustomLog /var/log/apache2/journal.yourdomain_access.log combined
</VirtualHost>

Enable the configuration and restart Apache:

sudo a2ensite journal.yourdomain.com
sudo systemctl restart apache2

Step 5: SSL Installation (HTTPS)

Install the SSL certificate to secure the connection:

sudo certbot --non-interactive \
  -m [email protected] \
  --agree-tos \
  --no-eff-email \
  --apache -d journal.yourdomain.com \
  --redirect

Step 6: Web Installation Wizard

Open your browser and access https://journal.yourdomain.com. You will see the OJS installation page. Fill in the following sections:

  1. Administrator Account: Create a username, password, and admin email address.
  2. Directory for uploads: Enter the path /var/www/journal.yourdomain.com/files.
  3. Database Settings:
    • Database driver: MySQLi
    • Username: ojs_user
    • Password: strongpassword
    • Database name: ojs_db
  4. Click Install Open Journal Systems.

The OJS installation is now complete.

Conclusion

Congratulations! Your scientific journal platform is now active using Open Journal Systems on an Ubuntu server. With OJS, you have laid a strong foundation for professional, credible journal management that is ready to compete on an international stage. The next step is to customize the appearance through the Appearance menu and start inviting editors and authors to join your journal. Happy publishing!

Found this tutorial helpful? If you’d like to support my work, feel free to buy me a coffee! It helps keep the lights on and the tutorials coming.

Buy me a coffee

Related Posts