GNU/Linux >> Belajar Linux >  >> Debian

Cara Menginstal Shopware dengan NGINX dan Mengenkripsi di Debian 9

Shopware adalah perangkat lunak e-commerce open source profesional yang banyak digunakan. Berdasarkan teknologi mutakhir seperti Symfony 3, Doctrine2 dan Zend Framework Shopware hadir sebagai platform yang sempurna untuk proyek e-commerce Anda berikutnya. Tutorial ini akan menunjukkan kepada Anda cara menginstal Shopware Community Edition (CE) pada sistem Debian 9 dengan menggunakan NGINX sebagai server web dan cara mengamankan situs web dengan sertifikat SSL Let's encrypt gratis.

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 Debian 9.
  • Pengguna non-root dengan hak istimewa sudo.

Langkah awal

Periksa versi Debian Anda:

lsb_release -ds
# Debian GNU/Linux 9.8 (peregangan)

Siapkan zona waktu:

sudo dpkg-konfigurasi ulang 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 Debian:

sudo apt install -y curl wget vim git unzip socat apt-transport-https

Langkah 1 - Instal ekstensi PHP dan PHP

Instal PHP, serta ekstensi PHP yang diperlukan untuk Shopware:

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

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

php -m

ctype
curl
exif
fileinfo
. . .
. . .

Periksa versi PHP:

php --version

# PHP 7.0.30-0+deb9u1 (cli) (dibuat:14 Jun 2018 13:50:25) ( NTS )
# Hak Cipta (c ) 1997-2018 Grup PHP
# Zend Engine v3.2.0, Hak Cipta (c) 1998-2018 Zend Technologies
# dengan Zend OPcache v7.2.15-0debian0.18.04.1, Hak Cipta (c) 1999 -2018, oleh Zend Technologies

Layanan PHP-FPM secara otomatis dimulai dan diaktifkan saat reboot pada sistem Debian 9, jadi tidak perlu memulai dan mengaktifkannya secara manual. Kita dapat melanjutkan ke langkah berikutnya, yaitu instalasi 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.0.so /usr/lib/php/20170718/

Sertakan loader melalui konfigurasi PHP:

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

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

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

Simpan file dan mulai ulang PHP-FPM:

sudo systemctl restart php7.0-fpm.service

Langkah 3 - Instal MariaDB dan buat database untuk Shopware

Instal server database MariaDB:

sudo apt install -y mariadb-server

Periksa versi MariaDB:

mysql --version
# mysql Ver 14.14 Distrib 5.7.26, untuk Linux (x86_64) menggunakan pembungkus EditLine

Jalankan mysql_secure installation script to improve MariaDB security and set the password for MariaDB root user: MariaDB

sudo mysql_secure_installation

Jawab setiap pertanyaan:

Apakah Anda ingin menyiapkan plugin VALIDATE PASSWORD? T 
Sandi baru:sandi_aman_anda
Masukkan kembali sandi baru:password_aman_anda
Hapus pengguna anonim? [Y/n] Y
Larang login root dari jarak jauh? [Y/n] Y
Hapus database pengujian dan akses ke sana? [Y/n] Y
Muat ulang tabel hak istimewa sekarang? [Y/n] Y

Hubungkan ke shell MariaDB sebagai pengguna root:

sudo mysql -u root -p
# Masukkan kata sandi

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

mysql> BUAT DATABASE dbname;
mysql> GRANT ALL ON dbname.* UNTUK 'username' DIIDENTIFIKASI DENGAN 'password';
mysql> FLUSH PRIVILEGES;

Keluar dari MariaDB:

mysql> keluar

Ganti dbname, username and password with your own names.

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 perangkat lunak 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 -- email akun [dilindungi email]
sumber ~/.bashrc
cd ~

Periksa versi acme.sh:

acme.sh --version
# v2.8.1

Dapatkan RSA dan ECC/ECDSA sertifikat untuk domain/nama host Anda:

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

Jika Anda ingin sertifikat palsu untuk pengujian, Anda dapat menambahkan --staging flag to the above commands.

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

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

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:

keluar

Langkah 5 - Instal dan konfigurasikan NGINX

Instal server web NGINX:

sudo apt install -y nginx

Periksa versi NGINX:

sudo nginx -v
# versi nginx:nginx/1.10.3

Konfigurasikan NGINX untuk Shopware. Jalankan sudo vim /etc/nginx/sites-available/shopware.conf and add the following configuration:

server {
    listen 80;
    listen 443 ssl;

ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com/private.key;
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.key; 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.0-fpm.sock; } }

Aktifkan konfigurasi shopware.conf configuration by linking the file to the sites-enabled directory:

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

Periksa konfigurasi NGINX untuk 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 direktori /var/www/shopware directory to {jour_user}:

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

Arahkan ke direktori root dokumen:

cd /var/www/shopware

Unduh 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
rm shopware.zip /pra>

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

Ubah kepemilikan direktori /var/www/shopware directory to www-data.

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

Tingkatkan memory_limit = 256M and upload_max_filesize = 6M, and set allow_url_fopen = On if not already set in /etc/php/7.0/fpm/php.ini file.

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

Setelah membuat perubahan pada file /etc/php/7.0/fpm/php.ini file, reload php7.0-fpm.service:

sudo systemctl reload php7.0-fpm.service

Buka domain/IP Anda di browser web dan ikuti wizard penginstalan. Bagian belakang Shopware terletak di /backend example: 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:

Instalasi 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

Debian
  1. Instal Lets Encrypt dan Secure Nginx dengan SSL/TLS di Debian 9

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

  3. Cara Menginstal Magento dengan Nginx di Debian 10

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

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

  3. Cara Memasang Fork CMS dengan NGINX di Debian 9

  1. Cara Instal Pico CMS dengan Nginx dan Lets Encrypt di CentOS 7

  2. Instal Automad CMS dengan Nginx dan Mari Enkripsi SSL di Debian 10

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