UbuntuUbuntu Based

How To Install AbanteCart on Ubuntu 24.04 LTS

Install AbanteCart on Ubuntu 24.04

AbanteCart is a free, open-source eCommerce platform designed with flexibility and security in mind. It leverages PHP and a user-friendly interface to streamline the creation of online stores and shopping carts. Whether aiming to sell digital or tangible products, AbanteCart provides a robust framework to support small to medium-sized businesses and beyond.

Installing this eCommerce solution on Ubuntu 24.04 LTS yields a powerful, stable, and secure environment. Ubuntu 24.04 LTS (Long-Term Support) benefits from regular updates, extended support, and a reliable package management system, making it suitable for mission-critical applications.

This guide explains how to install AbanteCart on Ubuntu 24.04 LTS from start to finish. It offers detailed step-by-step instructions, deep troubleshooting tips, and insights into post-installation best practices. By following the steps below, an optimized and secure AbanteCart store will be ready to use on an Ubuntu server.

Prerequisites

Before starting, a few prerequisites must be in place:

  • System Requirements: Ensure adequate hardware resources. A minimum of 1 GB RAM is typically sufficient for a small site, but 2 GB or more often proves beneficial for performance.
  • Ubuntu 24.04 LTS: A fresh or existing installation of Ubuntu 24.04 LTS with sudo privileges.
  • Domain and DNS Setup: It is recommended to have a domain name—like example.com—pointing to the server’s IP address.
  • LAMP Stack (Linux, Apache, MySQL/MariaDB, PHP): AbanteCart relies on PHP and a relational database, so installing a robust LAMP stack is essential for optimal performance.

Updates to the system must also be performed regularly for both security fixes and performance improvements.

Step 1: Update System Packages

Keeping the Ubuntu 24.04 LTS server up to date is key to ensuring every installed package includes the latest security patches and enhancements. Use:

sudo apt update && sudo apt upgrade -y

This command updates the local package index and upgrades all installed packages to their newest versions. After the process completes, take a moment to reboot if the system prompts for it, especially after a kernel upgrade.

Step 2: Install Apache Web Server

AbanteCart supports multiple web servers, but Apache remains one of the most popular and user-friendly options on Ubuntu. On Ubuntu 24.04 LTS, Apache can be installed with:

sudo apt install apache2 -y

Next, enable and start Apache:

sudo systemctl enable apache2
sudo systemctl start apache2

To test if Apache is running successfully, open a web browser and navigate to the server’s IP address or domain name (for instance, http://yourdomain.com). A default Apache page should appear, confirming the installation.

Step 3: Install MySQL or MariaDB Database Server

A database is essential for storing AbanteCart’s dynamic information. Both MySQL and MariaDB are compatible with AbanteCart. MariaDB is often chosen for its open-source model, but MySQL remains a common choice as well. To install the MySQL server:

sudo apt install mysql-server -y

If preferring MariaDB, substitute:

sudo apt install mariadb-server -y

After installation, secure the database server:

sudo mysql_secure_installation

Follow the interactive prompts to set a root password, remove anonymous users, disable remote root access, and remove test databases.

Next, create a dedicated database and user for AbanteCart. Access the MySQL or MariaDB shell:

sudo mysql

Then, run commands similar to:

CREATE DATABASE abantecart_db;
CREATE USER 'abantecart_user'@'localhost' IDENTIFIED BY 'strong_password';
GRANT ALL PRIVILEGES ON abantecart_db.* TO 'abantecart_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Tip: Choose a strong and complex password for the database user to increase security.

Step 4: Install PHP and Required Extensions

AbanteCart relies on PHP for its core functionality. To ensure the platform runs smoothly and can handle various features such as image processing and data manipulation, install PHP along with the necessary extensions:

sudo apt install php libapache2-mod-php php-mysqli php-curl php-gd php-mbstring php-intl php-soap php-xml php-json php-common -y

After installation, verify the PHP version:

php -v

For recommended performance, adjust a few PHP settings in the /etc/php/8.x/apache2/php.ini (or a similar path), where 8.x might be the default installed version. Look for the following directives and modify them based on server resources:

  • memory_limit (e.g., 256M)
  • upload_max_filesize (e.g., 64M)
  • post_max_size (e.g., 64M)

Be sure to restart Apache to apply changes:

sudo systemctl restart apache2

Step 5: Download and Extract AbanteCart

The next phase is fetching the latest AbanteCart release from its official GitHub repository. Often, the master.zip file contains the most stable build:

cd /tmp
wget https://github.com/abantecart/abantecart-src/archive/master.zip
unzip master.zip

After extracting, move the extracted public_html contents to Apache’s document root. In some tutorials, it is recommended to place it in /var/www/abantecart to keep it neat:

sudo mkdir /var/www/abantecart
sudo mv abantecart-src-master/public_html/* /var/www/abantecart

Changing to /var/www/abantecart instead of /var/www/html helps keep the default directory uncluttered, though both approaches are valid.

Step 6: Set Correct Permissions

Permissions are critical to preventing unauthorized access while allowing Apache to serve files effectively. Assign the www-data user and group ownership:

sudo chown -R www-data:www-data /var/www/abantecart

Then adjust file and folder permissions to ensure security but also permit essential read-write operations:

sudo chmod -R 755 /var/www/abantecart

If uploading or configuration directories need more permissive settings, adjust them accordingly. However, be mindful of not overexposing sensitive paths with 777 modes.

Step 7: Configure Apache for AbanteCart

Setting up a dedicated Virtual Host ensures clean separation of different sites or applications on the same server. Create a new configuration file:

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

Insert a configuration resembling:

<VirtualHost *:80>
    ServerName yourdomain.com
    DocumentRoot /var/www/abantecart

    <Directory /var/www/abantecart>
        AllowOverride All
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/abantecart_error.log
    CustomLog ${APACHE_LOG_DIR}/abantecart_access.log combined
</VirtualHost>

Save and exit. Then enable the new site and the rewrite Apache module:

sudo a2ensite abantecart.conf
sudo a2enmod rewrite
sudo systemctl restart apache2

Apache is now configured to serve AbanteCart for yourdomain.com. If an SSL certificate is to be applied later, plan for an HTTPS virtual host as well.

Step 8: Complete Installation via Web Interface

Open a web browser and browse to http://yourdomain.com. The AbanteCart Installation Wizard will appear. The wizard typically involves these steps:

  1. License Agreement: Carefully review the GPL license and agree to proceed.
  2. System Check: The wizard checks PHP versions, extensions, folder permissions, etc. Ensure any missing dependencies are installed.
  3. Database Configuration: Input the abantecart_db as the database name, abantecart_user as the user, and use the corresponding password.
  4. Administrative Account Setup: Create a new admin username (avoid admin or administrator), a robust password, and a valid email address.
  5. Final Installation: Once complete, the wizard configures AbanteCart’s main files.
  6. Remove Install Directory: For security, remove or rename the install directory. This step is vital to prevent malicious reconfiguration attempts.

Install AbanteCart on Ubuntu 24.04

Upon successful completion, a login screen for the AbanteCart admin panel will be available at http://yourdomain.com/index.php?rt=index/login, or a specific /admin link with a unique code if set.

Post-installation Steps

A newly installed AbanteCart store is functional, but there are several enhancements that boost security and performance.

1. Secure the Admin Panel

AbanteCart allows renaming the admin path to something obscure which helps deter brute-force attacks. To do this, rename the /admin directory to a custom name, then update any corresponding configuration references. This measure significantly lowers the risk of targeted intrusion.

2. Enable HTTPS

E-commerce sites handle sensitive data. Installing and configuring SSL ensures data integrity. Let’s Encrypt offers a straightforward solution:

sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache -d yourdomain.com

Certbot automates SSL certificate acquisition and Apache Virtual Host configuration. Remember to always renew SSL when needed.

3. Backup Configuration Files

System configuration files, including system/config.php, store database credentials and other critical details. Copy them periodically:

sudo cp /var/www/abantecart/system/config.php /var/www/abantecart/system/config.php.bak

Regular backups can be included in a wider backup strategy. In case of unexpected changes, revert quickly from these backups.

4. Optimize Performance

AbanteCart offers caching at the application level. Enable caching inside the admin panel to accelerate page loads. Additionally, employing Content Delivery Networks (CDNs) can offload bandwidth usage, especially for images and other static files.

Combining server optimizations (such as enabling mod_expires and mod_deflate in Apache) with AbanteCart’s built-in performance settings leads to faster response times and potentially improved search engine rankings.

Troubleshooting Common Issues

Launching an eCommerce site can involve complexities. Here are typical hurdles and potential solutions:

  1. Permission Errors: If the installation wizard flags folder permissions or the site displays permission-related errors, verify file ownership and run:
    sudo chown -R www-data:www-data /var/www/abantecart
    sudo chmod -R 755 /var/www/abantecart

    Apply stricter permissions to sensitive files if needed.

  2. Database Connection Failures: If the setup wizard returns “Cannot connect to the database,” confirm the correct database name, user, and password in the wizard. Check if the user has the correct privileges. Also verify that localhost is the right hostname (it typically is).
  3. HTTP Errors After Setup: A blank page or HTTP 500 error may appear if there is a conflict in Virtual Host configurations or incorrect PHP dependencies. Inspect Apache error logs:
    sudo tail -f /var/log/apache2/error.log

    Resolve conflicts, missing directives, or syntax errors.

  4. Unsecure or Mixed Content Warnings: If HTTPS is set up but some resources still load over HTTP, update your store settings to use secure URLs. Adjust any hard-coded URLs in theme files or product images.

Additional Resources and Tips

  • AbanteCart Documentation: Official documentation provides extensive details on configuration, extensions, and customization.
  • Apache Logs: Keep track of the /var/log/apache2 directory for detailed error reports.
  • System Monitoring: Tools like htop or glances help monitor CPU and RAM usage in real time. This identifies if the server needs a resource upgrade.
  • Regular Updates: Security patches for Ubuntu and AbanteCart itself ensure a hardened environment. Scheduling periodic maintenance is recommended.

Congratulations! You have successfully installed AbanteCart. Thanks for using this tutorial for installing the AbanteCart open-source e-commerce platform on Ubuntu 24.04 LTS system. For additional help or useful information, we recommend you check the official AbanteCart website.

VPS Manage Service Offer
If you don’t have time to do all of this stuff, or if this is not your area of expertise, we offer a service to do “VPS Manage Service Offer”, starting from $10 (Paypal payment). Please contact us to get the best deal!

r00t

r00t is an experienced Linux enthusiast and technical writer with a passion for open-source software. With years of hands-on experience in various Linux distributions, r00t has developed a deep understanding of the Linux ecosystem and its powerful tools. He holds certifications in SCE and has contributed to several open-source projects. r00t is dedicated to sharing her knowledge and expertise through well-researched and informative articles, helping others navigate the world of Linux with confidence.
Back to top button