GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Menginstal X-Cart dengan Nginx dan Mengenkripsi SSL di Ubuntu 18.04 LTS

X-Cart adalah platform eCommerce open-source yang sangat fleksibel dengan berbagai fungsi dan integrasi. Kode sumber X-Cart di-host di Github. Panduan ini menjelaskan proses penginstalan X-Cart 5 di Ubuntu 18.04 LTS menggunakan Nginx sebagai server web dan MySQL sebagai server basis data dan cara mengamankan penginstalan dengan Sertifikat SSL gratis dari Let's encrypt.

Persyaratan

  • PHP versi 7.2 atau lebih tinggi
  • Ekstensi PHP:pdo , phar , mysql , mbstring , curl
  • MySQL versi 5.7.7 atau lebih tinggi atau setara dengan MariaDB
  • Nginx

Langkah Awal

Periksa versi Ubuntu Anda:

lsb_release -ds
# Ubuntu 18.04.4 LTS

Siapkan zona waktu:

sudo dpkg-reconfigure tzdata

Perbarui paket sistem operasi Anda (perangkat lunak). Ini adalah langkah pertama yang penting karena memastikan Anda memiliki pembaruan dan perbaikan keamanan terbaru untuk paket perangkat lunak default sistem operasi Anda:

sudo apt update && sudo apt upgrade -y

Instal beberapa paket penting yang diperlukan untuk administrasi dasar sistem operasi Ubuntu:

sudo apt install -y curl wget vim git unzip socat bash-completion

Langkah 1 - Instal ekstensi PHP dan PHP

Instal PHP, serta ekstensi PHP yang diperlukan:

sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-mbstring php7.2-curl php7.2-mysql php7.2-json php7.2-xml php7.2-phar php7.2-pdo php7.2-gd

Untuk menampilkan PHP yang dikompilasi dalam modul, Anda dapat menjalankan:

php -m

ctype
curl
exif
fileinfo
. . .
. . .

Periksa versi PHP:

php --version

# PHP 7.2.17-0ubuntu0.18.04.1 (cli) (built: Apr 18 2019 14:12:38) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
# with Zend OPcache v7.2.17-0ubuntu0.18.04.1, Copyright (c) 1999-2018, by Zend Technologies

Layanan PHP-FPM secara otomatis dimulai dan diaktifkan saat reboot pada sistem Ubuntu 18.04, jadi tidak perlu memulai dan mengaktifkannya secara manual. Kita bisa melanjutkan ke langkah berikutnya, yaitu instalasi dan setup database.

Langkah 2 - Instal MySQL dan buat database

Instal MySQL:

sudo apt install -y mysql-server

Periksa versinya:

mysql --version
# mysql  Ver 14.14 Distrib 5.7.27, for Linux (x86_64) using  EditLine wrapper

Jalankan mysql_secure_installation script untuk meningkatkan keamanan instalasi MySQL Anda:

sudo mysql_secure_installation

Masuk ke MySQL sebagai pengguna root:

sudo mysql -u root -p
# Enter password:

Buat database dan pengguna MySQL baru dan ingat kredensialnya:

CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
exit;

Langkah 3 - Instal klien acme.sh dan dapatkan sertifikat Let's Encrypt (opsional)

Mengamankan situs web Anda dengan HTTPS tidak diperlukan, tetapi ini adalah praktik yang baik untuk mengamankan lalu lintas situs Anda. Untuk mendapatkan sertifikat TLS dari Let's Encrypt, kami akan menggunakan klien acme.sh. Acme.sh adalah software shell UNIX murni untuk mendapatkan sertifikat TLS dari Let's Encrypt tanpa ketergantungan.

Unduh dan instal acme.sh:

sudo su - root
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
./acme.sh --install --accountemail [email protected]
source ~/.bashrc
cd ~

Periksa versi acme.sh :

acme.sh --version
# v2.8.1

Dapatkan RSA dan ECC/ECDSA sertifikat untuk domain/hostname Anda:

# RSA 2048
acme.sh --issue --standalone -d example.com --keylength 2048
# ECDSA
acme.sh --issue --standalone -d example.com --keylength ec-256

Jika Anda ingin sertifikat palsu untuk pengujian, Anda dapat menambahkan --staging tandai ke perintah di atas.

Setelah menjalankan perintah di atas, sertifikat your Anda dan kunci akan di:

  • Untuk RSA :/home/username/example.com direktori.
  • Untuk ECC/ECDSA :/home/username/example.com_ecc direktori.

Untuk membuat daftar sertifikat yang dikeluarkan, Anda dapat menjalankan:

acme.sh --list

Buat direktori untuk menyimpan sertifikat Anda. Kami akan menggunakan /etc/letsencrypt direktori.

mkdir -p /etc/letsecnrypt/example.com
sudo mkdir -p /etc/letsencrypt/example.com_ecc

Instal/salin sertifikat ke direktori /etc/letsencrypt.

# RSA
acme.sh --install-cert -d example.com --cert-file /etc/letsencrypt/example.com/cert.pem --key-file /etc/letsencrypt/example.com/private.key --fullchain-file /etc/letsencrypt/example.com/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"
# ECC/ECDSA
acme.sh --install-cert -d example.com --ecc --cert-file /etc/letsencrypt/example.com_ecc/cert.pem --key-file /etc/letsencrypt/example.com_ecc/private.key --fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"

Semua sertifikat akan diperpanjang secara otomatis setiap 60 hari.

Setelah mendapatkan sertifikat keluar dari pengguna root dan kembali ke pengguna sudo normal:

exit

Langkah 4 - Instal dan konfigurasikan Nginx

Instal Nginx:

sudo apt install -y nginx

Periksa versi Nginx:

sudo nginx -v
# nginx version: nginx/1.14.0 (Ubuntu)

Konfigurasikan Nginx untuk X-Cart dengan menjalankan:

sudo vim /etc/nginx/sites-available/xcart.conf

Dan isi file dengan konfigurasi di bawah ini.

server {
  listen 80;
  listen [::]:80;
  root /var/www/xcart;
  index index.php index.html index.htm;
  server_name example.com;
  location @handler {
    index cart.php;
    rewrite ^/sitemap.xml(\?.+)?$ /cart.php?target=sitemap;
    rewrite ^/(.*)$ /cart.php?url=$1 last;
  }
  location / {
    try_files $uri $uri/ @handler;
  }
  location ~ \.php$ {
    try_files $uri @handler;
    fastcgi_split_path_info  ^(.+\.php)(/.+)$;
    fastcgi_index index.php;
    fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
    include fastcgi_params;
    fastcgi_param PATH_INFO $fastcgi_path_info;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  }
}

Aktifkan xcart.conf baru konfigurasi dengan menautkan file ke sites-enabled direktori:

sudo ln -s /etc/nginx/sites-available/xcart.conf /etc/nginx/sites-enabled

Uji konfigurasi:

sudo nginx -t

Muat ulang Nginx:

sudo systemctl reload nginx

Langkah 5 - Instal X-Cart

Arahkan ke /var/www direktori:

cd /var/www/

Unduh paket X-Cart 5 dari halaman ini: http://www.x-cart.com/download.html

Unggah paket yang diunduh ke server Anda.

Ubah kepemilikan /var/www/xcart direktori ke www-data:

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

Arahkan ke example.com/install.php di browser web Anda dan ikuti petunjuk untuk menyelesaikan penginstalan.

Langkah 6 - Selesaikan penyiapan

Terima perjanjian lisensi dan klik Berikutnya .

Buat Akun Administrator.

Wizard penginstalan akan memeriksa apakah server Anda memenuhi persyaratan sistem untuk X-Cart 5

Konfigurasikan setelan basis data:

Menyiapkan Direktori + Langkah 6. Membangun Cache. Semua tugas pada langkah-langkah ini sepenuhnya otomatis, jadi Anda hanya perlu menunggu dan biarkan X-Cart 5 melakukan pekerjaan

Sekarang proses instalasi telah selesai. Anda dapat menggunakan tautan yang disediakan untuk mengakses bagian depan Pelanggan dan area Admin toko Anda.


Ubuntu
  1. Cara Menginstal Nextcloud dengan Nginx dan Lets Encrypt SSL di Ubuntu 20.04 LTS

  2. Cara Menginstal Magento 2 dengan Nginx dan Mengenkripsi SSL di Ubuntu 20.04 LTS

  3. Cara Menginstal Drupal 8.1 dengan Nginx, PHP-FPM dan SSL di Ubuntu 16.04

  1. Cara Menginstal Laravel 5 PHP Framework dengan Nginx di Ubuntu 16.04 LTS

  2. Cara Menginstal Shopware dengan NGINX dan Mari mengenkripsi di Ubuntu 18.04 LTS

  3. Cara Menginstal Bludit CMS dengan NGINX di Ubuntu 18.04 LTS

  1. Instal Automad CMS dengan Nginx dan Lets Encrypt SSL di Ubuntu 18.04

  2. Cara Install Grav CMS dengan Nginx dan Lets Encrypt di Ubuntu 18.04 LTS

  3. Cara Menginstal DokuWiki dengan Nginx dan Mari mengenkripsi SSL di CentOS 8