GNU/Linux >> Belajar Linux >  >> Ubuntu

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

Shopware adalah generasi berikutnya dari perangkat lunak e-commerce open source. Berdasarkan teknologi mutakhir seperti Symfony 3, Doctrine 2 dan Zend Framework Shopware hadir sebagai platform yang sempurna untuk proyek e-niaga Anda berikutnya. Tutorial ini akan memandu Anda melalui penginstalan Shopware Community Edition (CE) di sistem Ubuntu 18.04 LTS dengan menggunakan NGINX sebagai server web.

Persyaratan

Pastikan sistem Anda memenuhi persyaratan minimum berikut:

  • Sistem operasi berbasis Linux dengan server web NGINX atau Apache 2.x (dengan mod_rewrite) terpasang.
  • PHP 5.6.4 atau lebih tinggi dengan ekstensi ctype, gd, curl, dom, hash, iconv, zip, json, mbstring, openssl, session, simplexml, xml, zlib, fileinfo, dan pdo/mysql. PHP 7.1 atau lebih tinggi sangat disarankan.
  • MySQL 5.5.0 atau lebih tinggi.
  • Kemungkinan untuk menyiapkan tugas cron.
  • Minimum 4 GB ruang hard disk yang tersedia.
  • IonCube Loader versi 5.0.0 atau lebih tinggi (opsional ).

CATATAN: Shopware saat ini mencapai PHP 7.2.x kompatibel.

Prasyarat

  • Sistem operasi yang menjalankan Ubuntu 18.04 LTS.
  • Pengguna non-root dengan hak istimewa sudo.

Langkah awal

Periksa versi Ubuntu Anda:

lsb_release -ds
# Ubuntu 18.04.2 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 untuk Shopware:

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

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 dapat melanjutkan ke langkah berikutnya, yaitu pemasangan IonCube Loader.

Langkah 2 - Instal IonCube Loader (opsional )

Unduh IonCube Loader:

cd /tmp && wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz

Ekstrak pemuat:

tar xfz ioncube_loaders_lin_*.gz

Temukan direktori ekstensi PHP pada sistem dengan menjalankan perintah di bawah ini:

php -i | grep extension_dir
# extension_dir => /usr/lib/php/20170718 => /usr/lib/php/20170718

Salin ionCube Loader ke direktori ekstensi PHP:

sudo cp /tmp/ioncube/ioncube_loader_lin_7.2.so /usr/lib/php/20170718/

Sertakan loader melalui konfigurasi PHP:

sudo vim /etc/php/7.2/fpm/php.ini

Kemudian tambahkan baris dalam file untuk menyertakan pemuat ionCube. Itu bisa di mana saja dalam file di bawah ini [PHP] baris:

zend_extension = /usr/lib/php/20170718/ioncube_loader_lin_7.2.so

Simpan file dan mulai ulang PHP-FPM:

sudo systemctl restart php7.2-fpm.service

Langkah 3 - Instal MySQL dan buat database untuk Shopware

Instal server database MySQL:

sudo apt install -y mysql-server

Periksa versi MySQL:

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

Jalankan mysql_secure installation skrip untuk meningkatkan keamanan MySQL dan menyetel sandi untuk root MySQL pengguna:

sudo mysql_secure_installation

Jawab setiap pertanyaan:

Would you like to setup VALIDATE PASSWORD plugin? N
New password: your_secure_password
Re-enter new password: your_secure_password
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

Hubungkan ke shell MySQL sebagai pengguna root:

sudo mysql -u root -p
# Enter password

Buat database MySQL kosong dan pengguna untuk Shopware dan ingat kredensialnya:

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

Keluar dari MySQL:

mysql> exit

Ganti dbnameusername dan password dengan nama Anda sendiri.

Langkah 4 - 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 direktori /etc/letsencrypt.

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 5 - Instal dan konfigurasikan NGINX

Instal server web NGINX:

sudo apt install -y nginx

Periksa versi NGINX:

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

Konfigurasikan NGINX untuk Shopware. Jalankan sudo vim /etc/nginx/sites-available/shopware.conf dan tambahkan konfigurasi berikut:

server {
    listen 80;
    listen [::]:80;
    
    server_name example.com;
    root /var/www/shopware;

    index shopware.php index.php;

    location / {
        try_files $uri $uri/ /shopware.php$is_args$args;
    }

    location /recovery/install {
      index index.php;
      try_files $uri /recovery/install/index.php$is_args$args;
    }

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

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

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

Periksa konfigurasi NGINX untuk mengetahui kesalahan sintaks:

sudo nginx -t

Muat ulang layanan NGINX:

sudo systemctl reload nginx.service

Langkah 6 - Instal Shopware

Buat direktori root dokumen untuk Shopware:

sudo mkdir -p /var/www/shopware

Ubah kepemilikan /var/www/shopware direktori ke {jour_user}:

sudo chown -R {your_user}:{your_user} /var/www/shopware

Arahkan ke direktori root dokumen:

cd /var/www/shopware

Download dan unzip rilis Shopware terbaru melalui wget:

wget https://releases.shopware.com/install_5.5.8_d5bf50630eeaacc6679683e0ab0dcba89498be6d.zip?_ga=2.141661361.269357371.1556739808-1418008019.1556603459 -O shopware.zip
unzip shopware.zip
rm shopware.zip

CATATAN: Perbarui URL unduhan jika ada rilis yang lebih baru.

Ubah kepemilikan /var/www/shopware direktori ke www-data .

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

Tingkatkan memory_limit = 256M dan upload_max_filesize = 6M , dan setel allow_url_fopen = On jika belum disetel di /etc/php/7.2/fpm/php.ini berkas.

sudo vim /etc/php/7.2/fpm/php.ini

Setelah membuat perubahan di /etc/php/7.2/fpm/php.ini file, muat ulang php7.2-fpm.service:

sudo systemctl reload php7.2-fpm.service

Buka domain/IP Anda di browser web dan ikuti wizard penginstalan. Bagian belakang Shopware terletak di /backend contoh: http://example.com/backend .

Langkah 7 - Selesaikan penyiapan Shopware

Mulailah dengan memilih bahasa dan klik Berikutnya:

Selanjutnya, pastikan Anda memenuhi semua persyaratan Shopware:

Setuju dengan KL Shopware dan klik Berikutnya:

Masukkan kredensial basis data dan klik Berikutnya:

Mulai instalasi untuk membuat tabel database:

Setelah itu, Anda akan melihat pesan tentang impor database yang berhasil:

Pilih lisensi dan klik Berikutnya:

Isi beberapa pengaturan dasar untuk menyelesaikan penyiapan dan klik Berikutnya:

Penginstalan selesai.

Untuk mengakses area admin, tambahkan /backend ke URL Anda.

Anda telah berhasil menginstal Shopware. Nikmati toko online baru Anda!

  • https://en.shopware.com/
  • https://github.com/shopware/shopware

Ubuntu
  1. Cara Menginstal Nextcloud dengan Nginx di Ubuntu 18.04 LTS

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

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

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

  2. Cara Menginstal Shopware dengan NGINX dan Mengenkripsi di CentOS 7

  3. Cara Menginstal Shopware dengan NGINX dan Lets Encrypt di Fedora 30

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

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

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