PrestaShop adalah keranjang belanja open-source yang ditulis dalam PHP yang digunakan untuk membuat dan mengelola bisnis online Anda. Ini menyediakan antarmuka yang sederhana dan mudah digunakan yang membantu Anda meluncurkan toko online Anda dalam waktu yang minimal. Ini menyediakan banyak fitur termasuk, antarmuka yang ramah pengguna, beberapa gateway pembayaran (PayPal, Google Checkout), desain responsif seluler, dukungan gratis, multi-bahasa, analitik, pelaporan, dan banyak lagi.
Dalam posting ini, kami akan menunjukkan cara menginstal PrestaShop dengan Apache dan sertifikat SSL Let's Encrypt gratis 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 LAMP
Sebelum memulai, server LAMP harus diinstal di server Anda. Jika tidak diinstal, Anda dapat menginstalnya dengan ekstensi PHP lain menggunakan perintah berikut:
dnf install httpd mariadb-server php php-cli php-bcmath php-mysqli php-gd php-pdo php-xmlrpc php-intl php-posix php-json php-curl php-zip unzip -y
Setelah menginstal semua paket yang diperlukan, edit file php.ini dan ubah beberapa pengaturan default:
nano /etc/php.ini
Ubah baris berikut:
max_input_vars = 3000 post_max_size = 64M upload_max_filesize = 64M max_execution_time = 600 memory_limit = 256M date.timezone = Asia/Kolkata
Simpan dan tutup file kemudian mulai layanan Apache dan MariaDB dan aktifkan mereka untuk memulai saat reboot sistem:
systemctl start httpd
systemctl start mariadb
systemctl enable httpd
systemctl enable mariadb
Pada titik ini, server LAMP sudah terpasang di server Anda.
Buat Database untuk PrestaShop
PrestaShop menggunakan database MySQL/MariaDB untuk menyimpan data mereka. Jadi, Anda perlu membuat database dan suer untuk PrestaShop.
Pertama, login ke MariaDB dengan perintah berikut:
mysql
Setelah login, buat database dan user dengan perintah berikut:
MariaDB [(none)]> CREATE DATABASE prestashopdb;
MariaDB [(none)]> CREATE USER 'prestashopuser'@'localhost' IDENTIFIED BY 'securepassword';
Selanjutnya, berikan semua hak istimewa ke prestashopdb dengan perintah berikut:
MariaDB [(none)]> GRANT ALL PRIVILEGES ON prestashopdb. * TO 'prestashopuser'@'localhost';
Selanjutnya, flush hak istimewa dan keluar dari MariaDB dengan perintah berikut:
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;
Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Instal PrestaShop
Selanjutnya, Anda perlu mengunduh PrestaShop versi terbaru dari halaman unduhan resmi mereka. Anda dapat mengunduhnya dengan perintah berikut:
wget https://download.prestashop.com/download/releases/prestashop_1.7.7.3.zip
Setelah unduhan selesai, unzip file yang diunduh ke direktori root web Apache menggunakan perintah berikut:
unzip prestashop_1.7.7.3.zip -d /var/www/html/prestashop
Selanjutnya, atur kepemilikan yang tepat ke direktori prestashop menggunakan perintah berikut:
chown -R apache:apache /var/www/html/prestashop
Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Konfigurasi Apache untuk PrestaShop
Selanjutnya, Anda perlu membuat file konfigurasi virtual host Apache untuk PrestaShop. Anda dapat membuatnya dengan perintah berikut:
nano /etc/httpd/conf.d/prestashop.conf
Tambahkan baris berikut:
<VirtualHost *:80> ServerAdmin [email protected] ServerName prestashop.example.com DocumentRoot /var/www/html/prestashop <Directory /var/www/html/prestashop> Options +FollowSymlinks AllowOverride All Require all granted </Directory> ErrorLog /var/log/httpd/prestashop-error_log CustomLog /var/log/httpd/prestashop-access_log common </VirtualHost>
Simpan dan tutup file setelah selesai. Selanjutnya, restart layanan Apache untuk menerapkan perubahan:
systemctl restart httpd
Selanjutnya, verifikasi status layanan Apache menggunakan perintah berikut:
systemctl status httpd
Anda akan mendapatkan output berikut:
? httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled) Drop-In: /usr/lib/systemd/system/httpd.service.d ??php-fpm.conf Active: active (running) since Wed 2021-04-07 01:04:19 EDT; 2h 2min ago Docs: man:httpd.service(8) Main PID: 47841 (httpd) Status: "Total requests: 313; Idle/Busy workers 100/0;Requests/sec: 0.0425; Bytes served/sec: 1.2KB/sec" Tasks: 278 (limit: 12524) Memory: 35.9M CGroup: /system.slice/httpd.service ??47841 /usr/sbin/httpd -DFOREGROUND ??47843 /usr/sbin/httpd -DFOREGROUND ??47844 /usr/sbin/httpd -DFOREGROUND ??47845 /usr/sbin/httpd -DFOREGROUND ??47846 /usr/sbin/httpd -DFOREGROUND ??48061 /usr/sbin/httpd -DFOREGROUND Apr 07 01:04:19 centos8 systemd[1]: Stopped The Apache HTTP Server. Apr 07 01:04:19 centos8 systemd[1]: Starting The Apache HTTP Server...
Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Konfigurasi Firewall
Selanjutnya, Anda harus mengizinkan port 80 dan 443 melalui firewall. Anda dapat mengizinkannya dengan perintah berikut:
firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --zone=public --permanent --add-service=https
Selanjutnya, muat ulang firewall untuk menerapkan perubahan:
firewall-cmd --reload
Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Akses PrestaShop
Sekarang, buka browser web Anda dan akses antarmuka web PrestaShop menggunakan URL http://prestashop.example.com . Anda akan diarahkan ke halaman berikut:
Pilih bahasa Anda dan klik Berikutnya tombol. Anda akan melihat halaman berikut:
Setujui perjanjian Lisensi dan klik Berikutnya tombol. Anda akan melihat halaman berikut:
Berikan nama toko Anda, informasi negara, informasi akun, dan klik tombol Berikutnya tombol. Anda akan melihat halaman berikut:
Berikan nama basis data Anda, nama pengguna basis data, kata sandi, dan klik tombol Berikutnya tombol. Setelah instalasi selesai, Anda akan melihat halaman berikut:
Klik Kelola toko Anda tombol. Anda akan melihat halaman berikut:
Sekarang, hapus folder instalasi dengan perintah berikut:
rm -rf /var/www/html/prestashop/install
Selanjutnya, klik URL admin PrestaShop . Anda akan melihat halaman berikut:
Berikan nama pengguna, kata sandi admin Anda, dan klik MASUK tombol. Anda akan melihat dasbor PrestaShop di halaman berikut:
Amankan PrestaShop dengan Let's Encrypt SSL
Selanjutnya, Anda perlu menginstal klien Certbot untuk menginstal Let's Encrypt SSL untuk PrestaShop. Anda dapat menginstalnya dengan perintah berikut:
dnf install letsencrypt python3-certbot-apache
Selanjutnya, dapatkan dan instal sertifikat SSL untuk domain let Anda dengan perintah berikut:
certbot --apache -d prestashop.example.com
Anda akan diminta untuk memberikan alamat email Anda dan menerima persyaratan layanan:
Saving debug log to /var/log/letsencrypt/letsencrypt.log Plugins selected: Authenticator apache, Installer apache Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): [email protected] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Please read the Terms of Service at https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must agree in order to register with the ACME server. Do you agree? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: Y - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Would you be willing, once your first certificate is successfully issued, to share your email address with the Electronic Frontier Foundation, a founding partner of the Let's Encrypt project and the non-profit organization that develops Certbot? We'd like to send you email about our work encrypting the web, EFF news, campaigns, and ways to support digital freedom. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: Y Account registered. Requesting a certificate for prestashop.example.com Performing the following challenges: http-01 challenge for prestashop.example.com Waiting for verification. Cleaning up challenges Deploying Certificate to VirtualHost /etc/httpd/conf.d/prestashop.conf Redirecting all traffic on port 80 to ssl in /etc/httpd/conf.d/prestashop.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Congratulations! You have successfully enabled https://prestashop.example.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Subscribe to the EFF mailing list (email: [email protected]). IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/prestashop.example.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/prestashop.example.com/privkey.pem Your certificate will expire on 2021-06-09. To obtain a new or tweaked version of this certificate in the future, simply run certbot again with the "certonly" option. To non-interactively renew *all* of your certificates, run "certbot renew" - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le
Sekarang Anda dapat mengakses situs web Anda dengan aman menggunakan URL https://prestashop.example.com.
Kesimpulan
Selamat! Anda telah berhasil menginstal PrestaShop dengan Apache dan Let's Encrypt SSL di CentOS 8. Sekarang Anda dapat menambahkan produk Anda ke PrestaShop dan mulai menjual secara online. Jangan ragu untuk bertanya kepada saya jika Anda memiliki pertanyaan.