System Requirements
The application has a few system(software and hardware) requirements. All the listed requirements are mandatory, so you will need to make sure your server meets the following requirements before you start the installation process.
Server
It is recommended to host this application at least on a VPS server. Though you can host zCart on almost any server, most of the shared servers will not allow you to configure some required settings. With limited control, you will not be able to get the full performance from zCart application. We do not recommend using shared hosting to host this script.
If you are more comfortable with cPanel-based hosting go for Hostinger or Namecheap VPS. They have competitive pricing with good support.
Recommended Hosting Services:
You’re free to get the hosting from any provider. If you’re not sure here are some recommendations for you to start with.
- Hostinger (Choose Between Cloud or VPS Hosting)
- Namecheap (Choose a VPS or Dedicated Server)
- Digital Ocean (Start with a VMs of 2 GiB-1 vCPU)
- Make sure you’ve
sudo
privilege on the server and access tocommand line
tool and also have full access to theMySQL
database. - Your server needs to have a static IP for this application. So please have a server with a fixed IP address. You can change the IP anytime later.
SSL Certificate
Having an SSL certificate is highly recommended for your domain. Some third-party APIs in zCart scrip will require an SSL certificate for secure communication. An SSL certificate will give your marketplace a security layer and also visitors will trust your brand more. There are lots of providers out there, get one from your favorite provider, and also you can buy your SSL from here.
PHP & Extensions
- PHP version 8.1
- OpenSSL
- MySQLi
- sqlite3
- PDO_sqlite
- PDO
- SQLite
- Mbstring
- Tokenizer
- XML
- Ctype
- JSON
- cURL
- Fileinfo
- ZipArchive
- exif
- GD
- pcntl
- memchached
Cpanel
- Be sure to enable the
mod_rewrite
module so the .htaccess file will be honored by the server. - If you’re using shared hosting(not recommended) be sure the
symlink()
function is enabled on our server. Some shared servers disable this function.
Apache
- Be sure to enable the
mod_rewrite
module so the .htaccess file will be honored by the server. - If you’re using shared hosting(not recommended) be sure the
symlink()
function is enabled on our server. Some shared servers disable this function.
Nginx (Only if you are using the Nginx server)
- Set the
proxy_read_timeout 150;
andfastcgi_read_timeout 150;
to Nginx config
MySQL
- MySQL 5.7+ or MariaDB 10.3.0+ is required.
Configuration ( php.ini )
post_max_size=512M
or more
upload_max_filesize=512M
or more
max_execution_time=300
or more
Permissions
After uploading the zCart to your server, you may need to configure some permissions. Firstly set all your directory’s permission to 755
and files to 644
to protect your application from common security issues.
But, some directories must be writable by your web server to manage the application. So you need to allow your web server user to have full access to these directories.
So, set permission 775
the below directories:
- storage
- storage/logs
- storage/framework
- bootstrap/cache
- vendor
Document Root
When you visit a website, you are accessing a particular folder on a web server. For example, when you visit example.com, the server is pulling up the files at: /home/USERNAME/public_html
. The web server only serves the files located in that folder to incoming visitors. The location of that web folder is called the “document root” and is set by the Apache configuration.
Now you need to configure your server/domain’s document root to the /path/to/your/zCart/public
directory of your project. The index.php
inside of the public directory serves as the front controller for all HTTP requests entering your application.