When setting up an e-commerce platform, there are a number of factors one should consider, including the type of software, the hosting provider, payment methods, and others. Usually, developers prefer working with open source platforms like PrestaShop, Magento, OpenCart, and WooCommerce to quickly get started developing an e-commerce platform.
Personally, I have always preferred using PrestaShop for my client’s e-commerce websites. I find the software and interface user-friendly and the process of deploying the software to be relatively easy.
This guide shows you how you can easily deploy PrestaShop e-commerce software on your Alibaba Cloud Elastic Compute Service (ECS) instance.
These steps are tested, as such, we expect them to work perfectly once followed carefully.
What Is PrestaShop?
PrestaShop is a free and open source software used to develop nice looking e-commerce stores. The software has a large support by a community of developers who build outstanding plugins and beautiful themes for stores. PrestaShop is currently used by 250,000 shops and is available in 60 different languages.
- A domain or subdomain. If you don’t have one, you can obtain a good domain from Alibaba Cloud’s Domain product.
- Recommended server instance of Apache 2.x, Nginx or Microsoft IIS
- MySQL version 5.0 + installed with a database created
- PHP version 5.6+
- Ubuntu 18.04 server
Deploying PrestaShop on your Alibaba Cloud Server Instance
Installing PrestaShop on your server instance is very easy. Once you have your web server already set up, the other part of the configuration may take you less than 15 minutes to complete.
So before we can get hands-on installing PrestaShop, make sure that your server meets the recommended requirements above. You may skip the first section of this tutorial if you think your web server is properly set up, however, if you’re a beginner I recommend going through this section to avoid trouble deploying PrestaShop on your server instance.
Setting Server Instance
There are two ways you can set up your web server instance on Alibaba cloud; one involves using the control panel (read the article here on setting up cPanel on Alibaba cloud ECS) and the other involves setting up a server from scratch. Both methods work well, it all comes down to personal preference. In this tutorial, we shall go through all the two methods indicated above.
Method 1: Using Control Panel
After installing and deploying your cPanel on your Alibaba Cloud server, perform the following steps to set up your PrestaShop store:
- Login to your web host cPanel ( Usually it’s located at https://your-domain-name.com/cpanel)
- Go to PrestaShop Github or official PrestaShop download page and download the latest version of their shop software onto your computer. Usually, they have only one stable version on their download portal. Using an old version is not recommended as you may encounter challenges with bugs that have been previously fixed.
- Go back to your cPanel dashboard, Select File Manager then public_htm folder.
- Upload the PrestaShop software you just cloned from GitHub into this directory or any of the subfolders of your subdomain.
- Extract the files and populate them in the public_html folder or any other of your subdomain folders.
I would recommend the option below while trying to push your files on the web server since it is more accurate.
You can also use your FTP client such as FileZilla to transfer files to your server host. Use the required details to connect to your server. In the case, we need uncompress our prestashop.zip file. Read this article on how to use FileZilla to upload and manage website files.
After the connection is successful in Filezilla or any other FTP client, navigate to your local files until you get the unzipped PrestaShop files. Keep the files open in the left section of your fileZilla client FTP.
We shall then drag and drop files from the Left section to our remote site. The other option is to select all files, right-click, and select Upload. You’ll have to wait for a few minutes (usually between 15–30 minutes) before the upload is complete.
A Few Things to Note
If you want your PrestaShop store to appear as https://www.my-store.com, place the PrestaShop files in the public_html folder otherwise create a subfolder for your website subdomain.
Now, your left section of Filezilla will contain local files of the unzipped PrestaShop software and the right contains the destination location.
Uploading files to your host are simple, simply drag and drop files from local folder to the remote folder or simply right click and select upload in the context menu.
Create PrestaShop MySQL Database
Once the files have been successfully uploaded on our server instance, create a database server with MySQL Database wizard in the cPanel dashboard. In case you don’t have a MySQL user who has privileges to access and modify this database, create it as well.
Before you can install PrestaShop in GUI, you need to first consider setting up a MySQL database. For cPanel user, we shall use PhpMyAdmin or more easily MySQL Database wizard which comes already preinstalled.
After adding files like this in your server, you should consider jumping to the following section (step 2) to install and configure your PrestaShop store on your Alibaba server instance. The following section is for those who want to configure their server from scratch. Remember cPanel isn’t free, so the method below maybe cost effective.
Method 2: Setting up a server from Scratch
Read this article on how to set up your instance on Alibaba Cloud.
Install PrestaShop on Ubuntu 18.04
After configuring and setting up your Ubuntu server. Next, we need to download and install PrestaShop software in our ‘/var/www/html’ directory. Use the commands below.
$ cd /var/www/html$ sudo wget https://download.prestashop.com/download/releases/prestashop_22.214.171.124.zip
Unzip the PrestaShop file using the following command below.
$ sudo apt-get install unzip$ sudo unzip prestashop_126.96.36.199.zip
You should remember to delete the default index.html file which was created by Apache during installation of the LAMP stack on the server. To do this, use the command below.
$ sudo rm /var/www/html/index.html
To enable PrestaShop to access and modify the right files, use the following commands below.
$ sudo chown www-data: /var/www/html/$ sudo chmod -R 755 /var/www/html/
After feeding the above commands successfully into your Ubuntu 18.04 server, you can now move to the next step which is much more fun.
Configuring PrestaShop in GUI
Perhaps now the simplest step, after going through all the above hustle setting up & deploying your PrestaShop store, this step will take you through the graphical life of setting up your shop on the Alibaba ECS server instance.
This process may take you a few minutes to get done.
To successfully deploy your PrestaShop store, Navigate to a browser and enter your server web address. Prestashop will automatically detect that it’s not yet installed and will take you to the auto installer.
Next, you need to read as you click Continue or Next. Let’s see how this is done below.
- On the introduction or welcome page of your PrestaShop installation, Select a language in which installation instructions will be shown to you and click Next button.
- In step 3 & 4, the server checks for system compatibility, the installer will verify that your server meets all the installation requirements required and return an Ok message. Just to let you know, sometimes this page is skipped if nothing is found wrong on your server.
- Store Information, This is the section where you can now customize your shop. give it a name, indicate its main activity, and indicate the personal information for the shop owner (which has legal binding in most countries). In this section is where you can choose your administrator login password, thus be careful. Click Next to continue.
- System Configuration, remember we set up our database before and hadn’t used it, in this case, we shall enter our database credentials and some few more details as required, Refer to the image below. Fill in the information carefully as required.
Database Server Address: The hostname of your MySQL server. Usually, mine is localhost, I think this may be the same with yours.
Database name: The name of the database we created in our previous steps before.
Database Login: The name of the MySQL user we created for our database
Database Password: The password for our MySQL user.
Tables_Prefix: The default prefix for your store is ps_. This will allow PrestaShop to create tables such as ps_cart, ps_customer among others.
Drop Existing Tables: Keep this section checked.
Now Click the “Test your database connection now!” to verify the information you gave is correct.
Click “Next”: the install will start configuring your shop, creating and populating the database tables, etc. This might take a few minutes: please be patient and do not touch your browser!
Once the installation and configuration are done, you can now log in to your PrestaShop store backend and customize it.
Congratulations! You have now successfully deployed a store on your Alibaba Cloud Elastic Compute Service (ECS) instance.