GNU/Linux >> Belajar Linux >  >> Cent OS

Cara Menginstal Shopware 6 dengan NGINX dan Lets Encrypt di CentOS 8

Shopware adalah platform sumber terbuka dan gratis yang membantu Anda memulai situs web e-niaga sendiri untuk memperkuat bisnis online Anda. Ini menyediakan banyak alat berguna yang membantu Anda membangun dan menyesuaikan toko online yang sepenuhnya responsif. Ini sangat mirip dengan Magento. Dibandingkan dengan Magento, Shopware adalah aplikasi yang sangat kuat, mudah digunakan, dan fleksibel. Ini membantu Anda membuat dan mengelola konten dan produk dengan mudah dari perangkat apa pun dengan antarmuka penggunanya yang modern.

Dalam tutorial ini, kami akan menunjukkan cara menginstal Shopware dengan Nginx dan Let's Encrypt SSL di CentOS 8.

Prasyarat

  • Server yang menjalankan CentOS 8.
  • Nama domain valid yang ditunjukkan dengan IP server Anda.
  • Kata sandi root dikonfigurasi di server Anda.

Instal Server LEMP

Shopware berjalan di server Web dan dibangun di atas PHP dengan komponen Symfony dan Zend, dan menggunakan MySQL atau MariaDB sebagai backend database. Jadi, Anda perlu menginstal Nginx, MariaDB, PHP, dan ekstensi lainnya ke server Anda. Anda dapat menginstal semuanya dengan perintah berikut:

dnf install nginx mariadb-server php php-cli php-intl php-fpm php-common php-mysqli php-curl php-json php-zip php-gd php-xml php-mbstring php-opcache unzip -y 

Setelah semua paket terinstal, mulai layanan Nginx, MariaDB dan PHP-FPM dan aktifkan untuk memulai pada sistem reboot dengan perintah berikut:

systemctl start mariadb
systemctl aktifkan mariadb
systemctl start nginx
systemctl start php-fpm
systemctl aktifkan nginx
systemctl aktifkan php-fpm

Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.

Konfigurasi PHP-FPM

Secara default, PHP-FPM dikonfigurasi untuk dijalankan sebagai pengguna dan grup Apache. Jadi, Anda perlu mengonfigurasinya untuk dijalankan sebagai pengguna dan grup Nginx. Anda dapat melakukannya dengan mengedit file /etc/php-fpm.d/www.conf:

nano /etc/php-fpm.d/www.conf

Ubah baris berikut:

pengguna =grup nginx =nginx 

Simpan dan tutup file kemudian buat direktori sesi dan atur kepemilikan yang tepat dengan perintah berikut:

mkdir -p /var/lib/php/session 
chown -R nginx:nginx /var/lib/php/session

Selanjutnya, edit file php.ini dan atur beberapa pengaturan yang disarankan:

nano /etc/php.ini

Ubah baris berikut:

memory_limit =512Mupload_max_filesize =20Mdate.timezone =Asia/Kolkata

Simpan dan tutup file kemudian restart layanan PHP-FPM untuk menerapkan perubahan:

systemctl restart php-fpm

Buat Database untuk Shopware

Selanjutnya, Anda perlu membuat database dan pengguna untuk Shopware. Pertama, sambungkan ke MariaDB menggunakan perintah berikut:

mysql

Setelah terhubung, buat database dan pengguna dengan perintah berikut:

MariaDB [(none)]> BUAT shopware DATABASE;
MariaDB [(none)]> HIBAH SEMUA shopware.* UNTUK 'shopware' DIIDENTIFIKASI DENGAN 'password';

Selanjutnya, flush hak istimewa dan keluar dari MariaDB dengan perintah berikut:

MariaDB [(none)]> HAK ISTIMEWA;
MariaDB [(none)]> EXIT;

Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.

Unduh Shopware

Selanjutnya, Anda perlu mengunduh versi terbaru Shopware untuk situs web resminya. Pertama, buat direktori untuk Shopware di dalam direktori root Nginx:

mkdir /var/www/html/shopware

Selanjutnya, unduh Shopware dengan perintah berikut:

wget https://www.shopware.com/en/Download/redirect/version/sw6/file/install_v6.3.5.0_ba08dbfc07784b5cefe7837f2abbda69dbf5b8b7.zip -O shopware.zip

Setelah unduhan selesai, ekstrak file yang diunduh ke direktori shopware:

unzip shopware.zip -d /var/www/html/shopware

Selanjutnya, atur izin dan kepemilikan yang tepat dengan perintah berikut:

chown -R nginx:nginx /var/www/html/shopware
chmod -R 775 /var/www/html/shopware

Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.

Konfigurasi Nginx untuk Shopware

Selanjutnya, buat file konfigurasi virtual host Nginx untuk Shopware dengan perintah berikut:

nano /etc/nginx/conf.d/shopware.conf

Tambahkan baris berikut:

server { dengarkan 80; # Menangani / ke index.php index index.php; # Nama server kami server_name shopware.example.com; # Dimana kode tersebut berada root /var/www/html/shopware/public; # Diperlukan untuk penginstalan / pembaruan lokasi Shopware / pemulihan/instal { index index.php; try_files $uri /recovery/install/index.php$is_args$args; } lokasi /recovery/update/ { if (!-e $request_filename){ rewrite . /recovery/update/index.php terakhir; } } # Teruskan file yang tidak ditemukan ke index.php. Juga memungkinkan untuk memiliki url yang indah seperti /homemade-products/ location / { try_files $uri /index.php$is_args$args; } # Biarkan php-fpm menangani lokasi file .php ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; termasuk fastcgi.conf; fastcgi_param HTTP_PROXY ""; fastcgi_buffers 8 16k; fastcgi_buffer_size 32k; fastcgi_read_timeout 300 detik; client_body_buffer_size 128k; fastcgi_pass unix:/run/php-fpm/www.sock; http2_push_preload aktif; }}

Simpan dan tutup file kemudian verifikasi Nginx untuk kesalahan sintaks dengan perintah berikut:

nginx -t

Anda akan mendapatkan output berikut:

nginx:file konfigurasi /etc/nginx/nginx.conf sintaksnya oknginx:file konfigurasi /etc/nginx/nginx.conf tes berhasil

Selanjutnya, restart layanan Nginx untuk menerapkan perubahan:

systemctl restart nginx

Anda juga dapat memverifikasi status Nginx menggunakan perintah di bawah ini:

systemctl status nginx

Anda akan mendapatkan output berikut:

? nginx.service - HTTP nginx dan server proxy terbalik Dimuat:dimuat (/usr/lib/systemd/system/nginx.service; dinonaktifkan; preset vendor:dinonaktifkan) Drop-In:/usr/lib/systemd/system/nginx. service.d ??php-fpm.conf Aktif:aktif (berjalan) sejak Sel 2021-02-02 00:40:04 EST; 19 detik yang lalu Proses:76059 ExecStart=/usr/sbin/nginx (kode=keluar, status=0/SUCCESS) Proses:76057 ExecStartPre=/usr/sbin/nginx -t (kode=keluar, status=0/SUCCESS) Proses:76054 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (kode=keluar, status=0/SUCCESS) PID Utama:76060 (nginx) Tugas:3 (batas:12523) Memori:5,5M CGroup:/ system.slice/nginx.service ??76060 nginx:proses master /usr/sbin/nginx ??76061 nginx:proses pekerja ??76062 nginx:proses pekerjaFeb 02 00:40:04 centos8 systemd[1]:Menghentikan HTTP nginx dan server proxy terbalik. 02 Februari 00:40:04 centos8 systemd[1]:Memulai HTTP nginx dan server proxy terbalik...02 Februari 00:40:04 centos8 nginx[76057]:nginx:file konfigurasi /etc/ sintaks nginx/nginx.conf okFeb 02 00:40:04 centos8 nginx[76057]:nginx:file konfigurasi /etc/nginx/nginx.conf tes berhasil Feb 02 00:40:04 centos8 systemd[1]:Memulai nginx HTTP dan server proxy terbalik.

Konfigurasi SELinux dan Firewall

Secara default, SELinux diaktifkan di CentOS 8. Jadi, Anda perlu mengonfigurasi konteks SELinux untuk Shopware. Anda dapat mengkonfigurasinya dengan perintah berikut:

setsebool httpd_can_network_connect di -P
chcon -R -u system_u -t httpd_sys_rw_content_t -r object_r /var/www/html/shopware

Selanjutnya, izinkan port 80 dan 443 melalui firewalld dengan perintah berikut:

firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload

Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.

Mengakses Antarmuka Web Shopware

Sekarang, buka browser web Anda dan ketik URL http://shopware.example.com .

Pilih bahasa Anda dan klik Berikutnya tombol. Pastikan semua persyaratan sudah terpenuhi lalu klik tombol Berikutnya tombol. Anda akan melihat halaman berikut:

Setujui GTC dan klik Berikutnya tombol. Anda akan melihat halaman berikut:

Berikan database, nama pengguna, kata sandi Anda dan klik tombol Mulai pemasangan tombol. Setelah instalasi selesai, Anda akan melihat halaman berikut:

Klik pada halaman Berikutnya. Anda akan diminta untuk memberikan nama Toko, alamat email, mata uang, negara, nama pengguna admin, kata sandi, dan klik Berikutnya tombol. Anda akan diarahkan ke dasbor Shopware:

Berikan semua informasi dan klik tombol Next. Anda akan melihat halaman berikut:

Instal plugin bahasa yang Anda inginkan dan klik Berikutnya tombol. Anda akan melihat halaman berikut:

Instal data demo atau lewati ini dan klik Berikutnya tombol. Anda akan melihat halaman berikut:

Klik pada Konfigurasi nanti . Anda akan melihat halaman berikut:

Klik Lewati tombol. Anda akan melihat halaman berikut:

Klik Berikutnya button.Anda akan melihat halaman berikut:

Klik Lewati tombol. Anda akan melihat halaman berikut:

Klik tombol Selesai tombol. Anda akan melihat halaman selamat datang Shopware:

Amankan Shopware Dengan Let's Encrypt SSL

Selanjutnya, Anda perlu menginstal utilitas Certbot di sistem Anda untuk mengunduh dan menginstal Let's Encrypt SSL untuk domain Let's Chat.

Anda dapat menginstal klien Certbot dengan perintah berikut:

wget https://dl.eff.org/certbot-auto
mv certbot-auto /usr/local/bin/certbot-auto
chown root /usr/local/bin/certbot- auto
chmod 0755 /usr/local/bin/certbot-auto

Selanjutnya, dapatkan dan instal sertifikat SSL untuk domain let Anda dengan perintah berikut:

certbot-auto --nginx -d shopware.example.com

Perintah di atas pertama-tama akan menginstal semua dependensi yang diperlukan di server Anda. Setelah terinstal, Anda akan diminta untuk memberikan alamat email dan menerima persyaratan layanan seperti yang ditunjukkan di bawah ini:

Menyimpan log debug ke /var/log/letsencrypt/letsencrypt.logPlugins dipilih:Authenticator nginx, Installer nginxMasukkan alamat email (digunakan untuk pembaruan mendesak dan pemberitahuan keamanan) (Masukkan 'c' untuk membatalkan):[dilindungi email]- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Harap baca Ketentuan Layanan dihttps://letsencrypt.org /documents/LE-SA-v1.2-November-15-2017.pdf. Anda harus setuju untuk mendaftar ke server ACME dihttps://acme-v02.api.letsencrypt.org/directory- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(A)setuju/(C)batal:A- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Apakah Anda bersedia membagikan alamat email Anda dengan Electronic FrontierFoundation, mitra pendiri proyek Let's Encrypt dan organisasi nirlaba yang mengembangkan Certbot? Kami ingin mengirimkan email tentang pekerjaan kami mengenkripsi web, berita EFF, kampanye, dan cara mendukung kebebasan digital.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(Y)es/(T)o:YMemperoleh sertifikat baruMelakukan tantangan berikut:http-01 challenge for shopware.example.comMenunggu verifikasi...Membersihkan up challengeMenyebarkan Sertifikat ke VirtualHost /etc/nginx/conf.d/shopware.conf

Selanjutnya, pilih apakah akan mengarahkan lalu lintas HTTP ke HTTPS seperti yang ditunjukkan di bawah ini:

Silakan pilih apakah akan mengarahkan lalu lintas HTTP ke HTTPS atau tidak, menghapus akses HTTP.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -1:Tidak ada pengalihan - Tidak ada perubahan lebih lanjut pada konfigurasi server web.2:Pengalihan - Membuat semua permintaan dialihkan untuk mengamankan akses HTTPS. Pilih ini untuk situs baru, atau jika Anda yakin situs Anda berfungsi di HTTPS. Anda dapat membatalkan perubahan ini dengan mengedit konfigurasi server web Anda.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Pilih nomor yang sesuai [1-2] lalu [enter] (tekan 'c' untuk membatalkan):2

Ketik 2 dan tekan Enter untuk melanjutkan. Setelah instalasi selesai, Anda akan melihat output berikut:

Mengalihkan semua lalu lintas pada port 80 ke ssl di /etc/nginx/conf.d/shopware.conf- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Selamat! Anda telah berhasil mengaktifkan https://shopware.example.comAnda harus menguji konfigurasi Anda di:https://www.ssllabs.com/ssltest/analyze.html?d=shopware.example.com- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -CATATAN PENTING:- Selamat! Sertifikat dan rantai Anda telah disimpan di:/etc/letsencrypt/live/shopware.example.com/fullchain.pem File kunci Anda telah disimpan di:/etc/letsencrypt/live/shopware.example.com/privkey.pem cert akan kedaluwarsa pada 2021-04-2. Untuk mendapatkan versi baru atau tweak dari sertifikat ini di masa mendatang, cukup jalankan certbot-auto lagi dengan opsi "certonly". Untuk memperbarui *semua* sertifikat Anda secara non-interaktif, jalankan "certbot-auto renew" - Jika Anda menyukai Certbot, pertimbangkan untuk mendukung pekerjaan kami dengan:Menyumbang ke ISRG / Let's Encrypt:https://letsencrypt.org/donate Menyumbang ke EFF:https://eff.org/donate-le

Sekarang Anda dapat mengakses Shopware dengan aman menggunakan URL https://shopware.example.com.

Kesimpulan

Selamat! Anda telah berhasil menginstal dan mengonfigurasi Shopware dengan Nginx dan Let's Encrypt SSL di CentOS 8. Kini Anda dapat dengan mudah meng-host toko online Anda sendiri dengan Shopware. Jangan ragu untuk bertanya kepada saya jika Anda memiliki pertanyaan.


Cent OS
  1. Cara Menginstal Nextcloud dengan Nginx dan PHP 7.3 di CentOS 8

  2. Cara Menginstal ownCloud 9.1 dengan Nginx dan MariaDB di CentOS 7

  3. Cara Menginstal Let's Encrypt di CentOS 8 Dengan Nginx

  1. Cara Menginstal Nextcloud dengan Nginx dan PHP7-FPM di CentOS 7

  2. Cara Menginstal Laravel 5.x dengan Nginx dan PHP-FPM 7.1 di CentOS 7

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

  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 Menginstal WonderCMS dengan Nginx dan Mengenkripsi SSL di CentOS 7