AbanteCart is a free, open-source eCommerce application used to build interactive online shopping websites. The fast and secure solution allows you to design, list products, attach prices, set up delivery methods, and accept payments on your eCommerce website.
This article explains how to install AbanteCart on an Ubuntu 20.04 LTS server.
Prerequisites
- Deploy a Ubuntu 20.04 Rcs Server
- A domain name pointed to the server
- SSH and Login as a standard user with sudo privileges
- Install LAMP
- Update the server
Create a new AbanteCart MySQL Database
Create a new database.
mysql> CREATE DATABASE abante;Create a new database user with a strong password.
mysql> CREATE USER 'abanteuser'@'localhost' IDENTIFIED BY 'STRONG_PASSWORD';Grant the user full rights to the Abante database.
GRANT ALL PRIVILEGES ON abante.* TO 'abanteuser'@'localhost';Reload MySQL privileges.
mysql> FLUSH PRIVILEGES;Exit the MySQL shell.
mysql> EXITInstall Required PHP Extensions
AbanteCart requires extra PHP modules activated on your server, install them using the following command:
$ sudo apt install php-xml php-gd php-mysql php-curl php-zip php-mbstringAlso, disable the php-opcache module to avoid AbanteCart installation time errors.
$ sudo phpdismod opcacheRestart Apache for changes to take effect.
$ sudo service apache2 restartInstall Abante Cart
Download the latest AbanteCart stable version from its GitHub page.
$ wget https://github.com/abantecart/abantecart-src/archive/master.zipExtract files from the archive.
$ unzip master.zipAmong the extracted files, public_html contains all necessary AbanteCart files. Move them to the webroot directory; by default, Apache points to /var/www/html. If you intend to run AbanteCart on a subdomain, create a new directory under /var/www/.
Create the directory.
$ sudo mkdir /var/www/abanteNow, move the public_html directory files to your webroot.
$ sudo mv public_html/* /var/www/abanteGrant Apache full ownership permissions to the directory.
$ sudo chown -R www:www-data /var/www/abanteChange the permissions mode to grant Apache write permissions to the directory.
$ sudo chmod 755 /var/www/abanteNext, configure Apache to serve files from the Abante directory.
Configure Apache
To serve AbanteCart on a separate domain, create a new Apache virtual host configuration file with /var/www/abante/ as the root directory.
Create a new virtual host file.
$ sudo touch /etc/apache2/sites-available/abante.confIn your favorite editor, edit the file.
$ sudo nano /etc/apache2/sites-available/abante.confPaste the following lines of code, and replace example.com with your actual domain or subdomain.
<VirtualHost *:80>
ServerName shop.example.com
ServerAdmin hello@shop.example.com
DocumentRoot /var/www/abante
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>Save and close the file.
Enable the new virtual host profile.
$ sudo a2ensite abanteRestart Apache.
$ sudo systemctl reload apache2Configure the Firewall
By default, the UFW firewall is enabled on Ubuntu. Depending on your Apache virtual host configuration file, open ports 80 and 443 to allow HTTP and HTTPS traffic.
Allow http traffic on port 80.
$ sudo ufw allow 80/tcpAllow https traffic on port 443.
$ sudo ufw allow 443/tcpThen, check the current firewall rules table.
$ sudo ufw statusYour output should be similar to the one below:
Status: active
To Action From
-- ------ ----
22 ALLOW Anywhere
443/tcp ALLOW Anywhere
80/tcp ALLOW Anywhere
22 (v6) ALLOW Anywhere (v6)
443/tcp (v6) ALLOW Anywhere (v6)
80/tcp (v6) ALLOW Anywhere (v6)Now, restart the firewall.
$ sudo ufw reloadConfigure AbanteCart
Visit your domain name in your web browser to start the installation wizard.
http://shop.example.comThe AbanteCart license page is displayed. Agree to the license, then continue with the setup process.
A compatibility check will run. If required packages and PHP extensions are installed, and AbanteCart can write to your webroot directory, it will create a new configuration file to store your database settings.
Enter the database name, username, password created on step 1. As well, select MySQLi as the database driver and localhost as the hostname.

Next, limit access to the backend with a unique login key phrase. Then, enter a username, email, and a strong password to create an administrator account.
After the server installs the necessary database entries and system files, log in to the backend console using your secret key phrase, administrator username, and password.
Use the quick start wizard to set up your preferred online store name, description, and contact information to display on the home page. Then, add tracking codes, shipping methods, payment options, tax settings, logo, and icons to continue.

To secure the server, delete the AbanteCart installation directory from your webroot files.
$ sudo rm -r /var/www/abante/install Furthermore, Install Certbot, and request a free Let’s Encrypt SSL certificate to serve AbanteCart over HTTPS.
Install Certbot.
$ sudo apt install python3-certbot-apacheUse Certbot to request a new SSL certificate. Change example.com, hello@example.com to your actual domain and email, respectively.
$ sudo certbot --redirect -d shop.example.com -m hello@example.com --agree-tosTest auto-renewal.
$ sudo certbot renew --dry-runConclusion
You have successfully installed and secured AbanteCart on a Ubuntu 20.04 LTS server. With free backend extensions, you can further design your online shopping website with new products, features, payment, and shipping methods to serve customers faster.