Magento is an open source e-Commerce Merchant software that you can use to build an online show case of your own, it was founded by eBay, and it is available as Enterprise and Community Edition.
Requirements:
Magento will require a Linux Distro with minimum 4 GB RAM, 500 GB Hard Drive, 1 Eth0 and Internet Connection.
Database: Mysql 5.6
Web Server: Apache/Nginx
PHP: 5.6 or above
Install apache
apt-get install apache2
To start Apache web server, run the commands below
sudo service apache2 start
Next, open Apache default site configuration file in Ubuntu, then add the directory block below if the block isn’t in there already.
If it’s there, then make sure it matches the block below highlighted in red:
sudo vi /etc/apache2/sites-available/000-default.conf
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
Install mysql-server with mysql-client
sudo apt-get install mysql-server
sudo apt-get install mysql-client
While installing MySQL database, you’ll be prompted to create a root password for the database. Create it and remember it.
To start the database server, run the commands below
sudo service mysql start
After installing the database server, you should go and create a database and its user for Magento. To do that, run the commands below to logon to the database server.
mysql -u root -p
Then run the SQL statement below to create a database called magento
CREATE DATABASE magento;
Next, create the database user called magentouser with password;
CREATE USER magentouser@localhost IDENTIFIED BY 'user_password';
Finally, grant all privileges to magentouser for magento database.
GRANT ALL ON magento.* TO magentouser@localhost;
Install PHP7 and other modules by running the commands below
sudo apt-get install php7.0 libapache2-mod-php7.0 php7.0-mcrypt php7.0-gd php7.0-mysql php7.0-tidy php7.0-xmlrpc php7.0-curl php7.0-common php7.0-cli php7.0-ldap php7.0-xml
After installing PHP7, go and increase its memory limit from 128MB to 512MB.
To do that, run the commands below to open the configuration file.
sudo vi /etc/php/7/apache2/php.ini
Change the line below:
memory_limit = 128M
Change to:
memory_limit = 512M
and add :
pdo_mysql.default_socket=/tmp/mysql.sock
Save the file.
Downloading Magento files.
From: http://www.magentocommerce.com/downloads/assets
then extract the file and copy all the contents to : /var/www/html/
sudo cp -rf magento/* /var/www/html/ (example)
Then change the ownership of the folder to Apache.
sudo chown -R www-data:www-data /var/www/html/
Change the permission of the files by running the commands below.
sudo chmod -R 755 /var/www/html/
Restart Apache and try connecting to the server.
sudo service apache2 restart
If everything was correctly followed, you should get the default Magento setup page as shown below.