OpenCart adalah platform e-commerce free dan open-source yang menggabungkan fitur-fitur canggih dengan fleksibilitas dan antarmuka yang ramah pengguna.

Dengan fitur-fitur seperti Manajemen User, Multi-Store, Afiliasi, Diskon, Tinjauan Produk, Multi-lingual dan beberapa Gateway Pembayaran, OpenCart adalah platform pilihan bagi banyak pedagang online.

Dalam tutorial ini, kami akan menunjukkan kepada Anda bagaimana menginstal OpenCart pada server Ubuntu 18.04. Kami akan menggunakan Nginx sebagai server web, PHP 7.2 terbaru, dan MySQL/MariaDB sebagai database.

Prasyarat

Pastikan Anda telah memenuhi prasyarat berikut sebelum melanjutkan dengan tutorial ini:

  • Memiliki nama domain yang menunjuk ke IP server publik Anda. Kami akan menggunakan domain example.com sebagai contoh.
  • Nginx diinstal di server Ubuntu Anda dengan mengikuti instruksi ini.
  • Sertifikat SSL dipasang untuk domain Anda untuk mengenkripsi informasi pengguna. Anda dapat menginstal sertifikat SSL gratis dari Let’s Encrypt dengan mengikuti instruksi ini.

Perbarui paket sistem ke versi terbaru dan instal utilitas unzip:

sudo apt update && sudo apt upgrade
sudo apt install unzip

Membuat database MySQL

Jika MySQL atau MariaDB sudah terinstall di server, Anda dapat melewati langkah ini, jika tidak, Anda dapat menginstal paket server MySQL 5.7 dari repositori default Ubuntu dengan mengetik:

sudo apt install mysql-server mysql-client

Untuk pemasangan MySQL baru, disarankan untuk menjalankan perintah mysql_secure_installation untuk meningkatkan keamanan server MySQL Anda. Login ke shell MySQL menggunakan perintah berikut:

sudo mysql

Dari dalam shell MySQL, jalankan pernyataan SQL berikut untuk membuat database baru bernama opencart:

CREATE DATABASE opencart;

Selanjutnya, buat akun user MySQL bernama opencart dan berikan izin yang diperlukan kepada user dengan menjalankan perintah berikut:

GRANT ALL ON opencart.* TO 'opencart'@'localhost' IDENTIFIED BY 'G4nt!-d3n9An-Pa$$woRd';

Pastikan Anda mengubah kata “G4nt!-d3n9An-Pa$$woRd” dengan kata sandi yang kuat.

Setelah selesai, keluar dari mysql console dengan mengetik:

EXIT;

Install dan Konfigurasi PHP

PHP 7.2 yang merupakan versi PHP default di Ubuntu 18.04 sepenuhnya didukung dan direkomendasikan untuk OpenCart. Karena kami akan menggunakan Nginx sebagai web server , kami juga akan menginstal paket PHP-FPM.

Jalankan perintah berikut untuk menginstal PHP dan semua modul PHP yang diperlukan:

sudo apt install php7.2-common php7.2-cli php7.2-fpm php7.2-opcache php7.2-gd php7.2-mysql php7.2-curl php7.2-intl php7.2-xsl php7.2-mbstring php7.2-zip php7.2-bcmath php7.2-soap

Layanan PHP-FPM akan secara otomatis dimulai setelah proses instalasi selesai, Anda dapat memverifikasinya dengan mencetak status layanan:

sudo systemctl status php7.2-fpm

Output akan menunjukkan bahwa layanan fpm aktif dan berjalan.

● php7.2-fpm.service - The PHP 7.2 FastCGI Process Manager
   Loaded: loaded (/lib/systemd/system/php7.2-fpm.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2019-02-25 10:45:42 UTC; 53s ago
     Docs: man:php-fpm7.2(8)
 Main PID: 27446 (php-fpm7.2)
   Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec"
    Tasks: 3 (limit: 505)
   CGroup: /system.slice/php7.2-fpm.service
           ├─27446 php-fpm: master process (/etc/php/7.2/fpm/php-fpm.conf)

Tetapkan opsi PHP yang diperlukan dan yang disarankan:

sudo sed -i "s/memory_limit = .*/memory_limit = 1024M/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/upload_max_filesize = .*/upload_max_filesize = 256M/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/zlib.output_compression = .*/zlib.output_compression = on/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/max_execution_time = .*/max_execution_time = 18000/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/;opcache.save_comments.*/opcache.save_comments = 1/" /etc/php/7.2/fpm/php.ini

Menginstal OpenCart

Pada saat menulis artikel ini, versi stabil terbaru dari OpenCart adalah versi 3.0.3.1

Sebelum mengunduh arsip OpenCart, pertama buat direktori yang akan menyimpan file OpenCart :

sudo mkdir -p /var/www/html/example.com

Unduh versi terbaru OpenCart dari repositori Github OpenCart menggunakan perintah wget berikut:

cd /tmp
wget https://github.com/opencart/opencart/releases/download/3.0.3.1/opencart-3.0.3.1.zip

Setelah unduhan selesai, ekstrak arsip OpenCart dan pindahkan file yang diekstrak ke direktori root dokumen domain:

unzip opencart-*.zip
sudo mv /tmp/upload/* /var/www/html/example.com/

Salin file konfigurasi:

sudo cp /var/www/html/example.com/{config-dist.php,config.php}
sudo cp /var/www/html/example.com/admin/{config-dist.php,config.php}

Tetapkan izin yang benar sehingga web server dapat memiliki akses penuh ke file dan direktori situs. Untuk mengubah kepemilikan gunakan perintah chown berikut:

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

Konfigurasi Nginx

Sekarang, Anda sudah menginstal Nginx dengan sertifikat SSL di server Ubuntu Anda, jika tidak, periksa prasyarat untuk tutorial ini.

Buka teks editor Anda dan buat file berikut:

sudo nano /etc/nginx/sites-available/example.com
# Redirect HTTP -> HTTPS
server {
    listen 80;
    server_name www.example.com example.com;

    include snippets/letsencrypt.conf;
    return 301 https://example.com$request_uri;
}

# Redirect WWW -> NON WWW
server {
    listen 443 ssl http2;
    server_name www.example.com;

    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
    include snippets/ssl.conf;

    return 301 https://example.com$request_uri;
}

server {
    listen 443 ssl http2;
    server_name example.com;

    root /var/www/html/example.com;
    index index.php;

    # SSL parameters
    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
    include snippets/ssl.conf;
    include snippets/letsencrypt.conf;

    # log files
    access_log /var/log/nginx/example.com.access.log;
    error_log /var/log/nginx/example.com.error.log;

    location =https://cdn.linuxid.net/favicon.ico?x61338 {
        log_not_found off;
        access_log off;
    }

    location = /robots.txt {
        allow all;
        log_not_found off;
        access_log off;
    }

    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php7.2-fpm.sock;
    }

    location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {
        expires max;
        log_not_found off;
    }

}

Jangan lupa untuk mengganti example.com dengan domain OpenCart Anda dan setel jalur yang benar ke file sertifikat SSL. Snippets yang digunakan dalam konfigurasi ini dibuat dalam panduan ini.

Sebelum memulai kembali layanan Nginx, lakukan tes untuk memastikan bahwa tidak ada kesalahan sintaksis:

sudo nginx -t

Jika tidak ada kesalahan, hasilnya akan terlihat seperti ini:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Terakhir, restart layanan Nginx dengan mengetik:

sudo systemctl restart nginx

Menyelesaikan Instalasi OpenCart

Sekarang OpenCart telah diunduh dan konfigurasi server selesai, Anda dapat menyelesaikan instalasi melalui web interface.

Buka browser, ketikkan domain dan layar yang mirip dengan yang berikut akan muncul:
install opencart licence
Baca perjanjian lisensi OpenCart, pilih bahasa yang ingin Anda gunakan dan klik pada tombol Continue .

Selanjutnya, Anda akan melihat halaman informasi berikut:
install opencart pre installation
Pastikan semua persyaratan pra-instalasi dipenuhi dan klik tombol Continue.

Pada layar berikutnya, setup wizard akan meminta Anda untuk memasukkan detail koneksi database Anda. Masukkan rincian pengguna dan database MySQL yang Anda buat sebelumnya.
install opencart configuration

Masukkan nama pengguna, kata sandi dan alamat email untuk administrasi dan mulai instalasi dengan mengklik tombol Continue.

Setelah instalasi selesai, Anda akan dibawa ke halaman yang memberi tahu Anda bahwa OpenCart telah diinstal.

Untuk mengakses dashboard administratif OpenCart, klik tombol Login to your Administration. Masukkan nama pengguna dan kata sandi dan Anda akan diarahkan ke dasbor administrasi.

Pertama kali Anda masuk, pop-up akan muncul meminta Anda untuk memindahkan direktori penyimpanan di luar direktori web.

Pertahankan pilihan default Automatically Move dan klik tombol merah Move . Direktori tempat Anda memindahkan direktori storage harus dapat diakses oleh server web.

Dari sini Anda dapat mulai menyesuaikan instalasi OpenCart Anda dan menambahkan produk baru.

Anda juga harus menghapus direktori pemasangan. Untuk melakukannya, kembali ke terminal dan masukkan perintah berikut:

sudo rm -rf /var/www/html/example.com/install

Kesimpulan

Selamat, Anda telah berhasil menginstal OpenCart di server Ubuntu 18.04 Anda.

Dokumentasi OpenCart adalah tempat awal yang baik untuk mempelajari lebih lanjut tentang cara mengelola instalasi OpenCart Anda.