What is PrestaShop?
PrestaShop is considered one of the world's most popular open-source e-commerce solution platforms.
It currently powers more than 300,000 stores worldwide.
The PrestaShop team's mission has been to develop world-class e-commerce software through open source innovation.
Together with a vibrant community, PrestaShop has made it possible for anyone to create an online store.
PrestaShop System Requirements
To successfully install PrestaShop, the environment is recommended to have:
- latest Apache Web Server
- PHP 7.4+ (8.0 recommended when PrestaShop version that supports it is released)
- MySQL 8.0+
- SFTP access
PHP extensions:
curl dom fileinfo gd intl mbstring zip json iconv
PHP configuration (php.ini file):
set memory_limit to - 256M; upload_max_filesize to - 64M; max_execution_time - 300; memory_limit - 256MB; disable short_open_tag;
Performance Optimization:
- memcached distributed memory object caching system or
- apcu or
- OpCache
WHY HOST YOUR PRESTASHOP ONLINE SHOP WITH US
Our Linux hosting platform is built to ensure an optimal PrestaShop hosting experience.
Hosting your e-commerce shop with us is faster, sometimes averaging 200% faster than other web hosts.
For example, we use mod_lsapi (a module based on LiteSpeed Technologies API for PHP) to make your PHP pretty fast.
Apache mod_lsapi gives you excellent PHP performance, low memory footprint along with great security, and native support for opcode caching.
But we also know that caching is essential to the speed of a PHP application.
That is why we also offer these three named PHP caching systems to speed up your PrestaShop websites even more.
Once your hosting account is ready, all you need to do is to log in cPanel.
Then scroll down to the Software section, click on Select PHP Version, and then Extensions to choose the one you want to use.
With our PHP Selector, you can select different PHP versions for each application you want to host.
And then there is mod_pagespeed to speed up & optimize your site automatically.
We also made it incredibly easy to deploy a pre-installed and secured PrestaShop hosted solution with just a click of a button.
If you host your PrestaShop with us, you will get:
- an easy 1-click PrestaShop installation
- an optimized PrestaShop hosting environment
- the ability to update PrestaShop as soon as the new version or security patches is released
- the ability to clone, and/or stage your PrestaShop instance & push it to a live site when ready
- the ability to backups your shop to Google Drive, Dropbox, Microsoft One Drive, FTP/FTPS/SFTP locations, etc
- automatic daily PrestaShop e-store backup & restore
- 24/7 technical support when you need it
Other Basic Requirements
Beyond the PrestaShop system requirements, make sure you have these:
- a domain name (If you do not have one, visit the domain registration page to search and purchase a new domain name for your shop)
- a web hosting account (If you do not have one, you can visit our Secure PHP Hosting Packages page, select a hosting plan, and create an account. If you are not sure what web hosting package is good for you or need a hosting+domain name full package, send an email to business@webhostingmagic.com)
- your cPanel, hostname (or an IP address), username, and password (If you are not sure what these are, visit What is my cPanel username? to learn more)
- an HTTPS-ready website (we provide SSL/TLS certificate to every domain we host at no extra cost. But you can opt to use an EV SSL for your online shop and can get that at the SSL Certificates page.)
- an hour of time.
- if installing manually, a text editor such as:
- Sublime Text: http://www.sublimetext.com/
- Atom: https://atom.io/
- Unix/Linux:
Or just use the cPanel File Manager editing feature
- an SFTP client such as:
- Windows:
- CoreFTP: http://www.coreftp.com/
- WinSCP: http://winscp.net/
- SmartFTP: http://www.smartftp.com/
- Mac OS X:
- Cyberduck: http://cyberduck.ch/
- Transmit: http://www.panic.com/transmit/
- Fetch: http://fetchsoftworks.com/fetch/
- Unix/Linux:
- gFTP: http://gftp.seul.org/
- kasablanca: http://kasablanca.berlios.de/
- NcFTP: http://www.ncftp.com/ncftp/
Also before installing PrestaShop, consider & complete:
DNS and SSL Check
Ensure that the domain and/or sub-domain is reachable online and that our system has installed a valid SSL certificate on it before proceeding.
Our system requires the DNS configuration to be valid (must match the records found at cPanel >>> Domains >>> Zone Editor) before it can install an SSL certificate on it.
You can check visually check your DNS setting with:
Or simply use the "dig" command.
Determine PrestaShop Installation Locations
If you are using the website (e.g. webcomm.dev) as the store, then you need to remove the auto-generated "prestashop" sub-folder.
If you go ahead and install it using the auto-generated option, your store will be located at webcomm.dev/store.
If you are installing PrestaShop to a sub-domain such as store.webcomm.dev, ensure that you have created the sub-domain (cPanel >>> Domains >>> Subdomains) before initializing the installation.
If you are installing on a sub-directory or folder, then either accept the one auto-generated or rename the folder to whatever you want the store to be called.
Also, determine whether you want to use the www as part of your store URL or not.
Once you have completed these steps, you can proceed with the installation.
PrestaShop 1-Click Installation (recommended)
Let's start the installation.
PrestaShop installation is super-easy.
Every step of the process is detailed, with tips and indications to help you complete the installation.
If you are not sure what to do, ask us our technical support team for help or ask us to install PrestaShop for you.
Log into your cPanel.
Scroll down the Software >>> Softaculous App Installer.
Or scroll down more to Softaculous App Installer pane, then select the E-commerce.
When the next page loads, look for PrestaShop by searching for it using the search field.
Or scroll down until you see it.
Please make sure to resolve any error that the system generates before proceeding with the installation.
Fill in all required fields.
Click on the "Install" button to install PrestaShop to your website.
Please make sure to resolve any error that the system generates before proceeding with the installation.
That's all about it.
The 1-click PrestaShop installer will create the MySQL database, MySQL user, download PrestaShop, install it and give you the admin panel URL, username, and password.
Installing PrestaShop Manually with cPanel Terminal & Your Web Browser
Installing PrestaShop is always faster & easier with our 1-click installer.
But if you have the technical skills, you can also do a manual installation with your browser and cPanel.
1. Create A MySQL Database
Our service includes MySQL & PostgreSQL as part of your hosting plan.
To create a new database, log in to your cPanel.
Scroll down to the Databases section and click on MySQL® Database Wizard.
The MySQL® Database Wizard is designed to guide you through the setup of a MySQL® database, user accounts, and user privileges.
In the New Database text box, enter a name for the database and click Next Step.
Please note that we enabled database prefixing on our systems.
So make sure that the cPanel account’s username, database name, database prefix, and underscore character do not exceed the maximum length of 32 characters.
In fact, keep it within 16 characters if you can help it as that helps you visually manage the database better.
In the Username text box, enter a name for the user who you wish to allow to manage the database.
Enter and confirm the new password in the appropriate text boxes.
Click Create User.
For now, select ALL PRIVILEGES.
You can adjust the privileges that you want to grant the user later after you have completed the AbanteCart installation.
For more information about user privileges, read the MySQL 8.0 documentation at https://dev.mysql.com/doc/refman/8.0/en/privileges-provided.html
You can also create a MySQL® database via cPanel API:
uapi --output=jsonpretty \ --user=username \ Mysql \ create_database \ name='prestashop'
or via URL:
https://hostname.example.com:2083/cpsess##########/execute/Mysql/create_database?name=prestashop
2. Download PrestaShop
Download the latest stable public version of PrestaShop by either visiting http://www.prestashop.com/en/download (email address required) or using wget or curl.
If you are using wget or curl, then visit the Advanced section of your cPanel and click on the SSH Terminal for cPanel.
This interface allows you to access an in-browser terminal application for direct command-line access within a cPanel & WHM session.
SSH network protocol allows you to connect to another web server over the internet via a command-line interface (CLI).
You can use this network protocol to remotely manage your server, configure scripts, and perform other tasks.
Many modern operating systems, such as macOS® and Linux® distributions, include SSH which you can configure when you want to access your system via an external machine.
cPanel has this as part of its core features.
Terminal video
Once the page loads, you must read and accept the warning notice.
Click I understand and want to proceed.
At this point, you need to figure out where you want to download the PrestaShop files to.
If you are installing on the main website and using wget then:
wget -O PrestaShopLatest.zip https://download.prestashop.com/download/releases/prestashop_1.7.8.2.zip
If you are on a slow network, consider using the "wget -b" flag or tmux or screen terminal multiplexers.
You can check if you have wget installed by running:
which wget
On our systems, these are installed by default.
If you are using curl, then:
curl https://download.prestashop.com/download/releases/prestashop_1.7.8.2.zip --output PrestaShopLatest.zip
Note that if not told otherwise, curl writes the received data to stdout.
In the command above, curl is instructed to instead save that data into as AbanteCart.zip using the -o, --output or -O, --remote-name options.
The file will be saved in the current working directory.
If you want the file saved in a different directory (e.g. sub-directory/folder), make sure you change the current working directory before invoking curl with this option.
If you get an error, use the -S, --show-error, or -v, --verbose flags to make curl show the error message.
It is time to unarchive or unzip the archive we downloaded.
3. Unzip the PrestaShop Archive
It is important that you test the compressed folder and check the structure before unzipping it.
unzip -t PrestaShopLatest.zip
Let's see the structure:
zipinfo PrestaShopLatest.zip
The PrestaShop zip archive has three items:
- the "prestashop.zip", which contains all the PrestaShop files that you will soon be uploading on your web server.
- the "Install_PrestaShop.html" file, which opens the installation guide page in your default browser.
- the index.php file which launches the installation.
Now that we see there that there is no error and are able to view the file structure, let's go ahead and unzip it properly.
If you are using the cPanel Terminal or have SSH into your cPanel server, then you need to unzip/unpack the archived zip file.
unzip PrestaShopLatest.zip
The result will give us a file structure like this:
-rw-rw-r-- 1 $username $username 4.9K Dec 7 17:14 INSTALL.txt -rw-rw-r-- 1 $username $username 441B Oct 11 13:10 Install_PrestaShop.html -rw-rw-r-- 1 $username $username 182K Dec 7 17:50 LICENSES -rw-rw-r-- 1 $username $username 88B Dec 7 17:14 Makefile drwxrwxr-x 29 $username $username 928B Dec 7 17:14 admin/ drwxrwxr-x 9 $username $username 288B Dec 7 17:57 app/ -rw-rw-r-- 1 $username $username 1.3K Dec 7 17:14 autoload.php drwxrwxr-x 5 $username $username 160B Dec 7 17:14 bin/ drwxrwxr-x 12 $username $username 384B Dec 7 17:14 cache/ drwxrwxr-x 136 $username $username 4.3K Dec 7 17:14 classes/ -rw-rw-r-- 1 $username $username 410K Dec 7 17:14 composer.lock drwxrwxr-x 18 $username $username 576B Dec 7 17:14 config/ drwxrwxr-x 7 $username $username 224B Dec 7 17:14 controllers/ drwxrwxr-x 7 $username $username 224B Dec 7 17:14 docs/ drwxrwxr-x 4 $username $username 128B Dec 7 17:14 download/ -rw-rw-r-- 1 $username $username 2.4K Dec 7 17:14 error500.html -rw-rw-r-- 1 $username $username 4.7K Dec 7 17:14 images.inc.php drwxrwxr-x 41 $username $username 1.3K Dec 7 17:14 img/ -rw-rw-r-- 1 $username $username 1.1K Dec 7 17:14 index.php -rw-rw-r-- 1 $username $username 1.2K Dec 7 17:14 init.php drwxrwxr-x 17 $username $username 544B Dec 7 17:14 install/ drwxrwxr-x 22 $username $username 704B Dec 7 17:57 js/ drwxrwxr-x 101 $username $username 3.2K Dec 7 17:14 localization/ drwxrwxr-x 7 $username $username 224B Dec 7 17:14 mails/ drwxrwxr-x 60 $username $username 1.9K Dec 7 17:50 modules/ drwxrwxr-x 8 $username $username 256B Dec 7 17:14 override/ drwxrwxr-x 41 $username $username 1.3K Dec 7 17:14 pdf/ -rw-rw-r-- 1 $username $username 1.5K Dec 7 17:14 phpstan.neon.dist -rw-rw-r-- 1 $username $username 78M Dec 7 08:57 prestashop.zip drwxrwxr-x 7 $username $username 224B Dec 7 17:14 src/ drwxrwxr-x 12 $username $username 384B Dec 7 17:57 themes/ drwxrwxr-x 5 $username $username 160B Dec 7 17:57 tools/ drwxrwxr-x 6 $username $username 192B Dec 7 17:14 translations/ drwxrwxr-x 4 $username $username 128B Dec 7 17:14 upload/ drwxrwxr-x 9 $username $username 288B Dec 7 17:50 var/ drwxrwxr-x 52 $username $username 1.6K Dec 7 17:50 vendor/ drwxrwxr-x 4 $username $username 128B Dec 7 17:14 webservice/
These are the files to upload (if you are on a local machine) to your cPanel web server excluding the "Install_PrestaShop.html" and of course the prestashop.zip.
If you are on a local machine, this is where you figure out how to get the files to your cPanel server.
Using an FTP client, transferring the 28400 files might take time especially if you are a slow connection.
Consider performing the download and extraction of PrestaShop files directly on your server.
If you are already in your cPanel server and have downloaded the PrestaShop files into another folder to /tmp directory, you need to upload or copy all the files and folders to either public_html or public_html/store
cp -vR * /home/$username/public_html/
Once the files are in place, visit the website URL via your browser and follow the step-by-step guide to complete the process.