GNU/Linux >> Belajar Linux >  >> Ubuntu

Instalasi Platform E-Commerce Magento dengan Apache2 dan Lets Encrypt di Ubuntu 20.04

Magento adalah aplikasi web e-niaga sumber terbuka dan gratis yang memungkinkan Anda membuat toko eCommerce yang berfungsi penuh dalam hitungan menit. Itu ditulis dalam PHP dan menggabungkan fitur-fitur canggih dengan fleksibilitas dan antarmuka yang ramah pengguna. Ini adalah salah satu solusi paling populer untuk toko online yang dihosting sendiri karena kesederhanaannya dan panel admin yang kuat. Muncul dengan serangkaian fitur yang kaya termasuk, Manajemen Situs, SEO, Manajemen Katalog, Penjelajahan Produk dan Katalog, Manajemen Pesanan, Checkout, Alat Promosi dan Konversi, dan banyak lagi.

Dalam tutorial ini, kami akan menunjukkan cara menginstal platform E-commerce Magento dengan Apache dan Let's Encrypt SSL di Ubuntu 20.04.

Prasyarat

  • Server yang menjalankan Ubuntu 20.04 dengan RAM 4 GB.
  • Nama domain yang valid ditunjukkan dengan server Anda.
  • Kata sandi root dikonfigurasi di server Anda.

Instal Server LAMP

Magento berjalan di server web, ditulis dalam PHP, dan menggunakan MariaDB sebagai database. Jadi, Anda perlu memasang tumpukan LAMP di server Anda.

Pertama, instal server web Apache dan server MariaDB dengan perintah berikut:

apt-get install apache2 mariadb-server mariadb-client -y

Versi terbaru Magento hanya kompatibel dengan PHP 7.1.3+ dan 7.2.x. Jadi, Anda perlu menginstal versi PHP yang didukung dengan ekstensi yang diperlukan di server Anda.

Secara default, Ubuntu 20.04 dikirimkan dengan PHP versi 7.4. Jadi, Anda perlu menambahkan PPA Ondrej di sistem Anda untuk menginstal versi PHP lainnya.

Anda dapat menambahkan Ondrej PHP PPA dengan perintah berikut:

apt-get install software-properties-common -y
add-apt-repository ppa:ondrej/php

Selanjutnya, perbarui repositori dan instal PHP dengan ekstensi lain yang diperlukan menggunakan perintah berikut:

apt-get install php7.2 libapache2-mod-php7.2 php7.2-bcmath php7.2-common php7.2-mbstring php7.2-xmlrpc php7.2-soap php7.2-gd php7.2-xml php7.2-intl php7.2-mysql php7.2-cli php7.2-ldap php7.2-zip php7.2-curl wget curl unzip -y

Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.

Konfigurasi Database MariaDB

Secara default, MariaDB tidak diamankan. Jadi, ada baiknya untuk mengamankan dan mengatur kata sandi root MariaDB. Anda dapat melakukannya dengan perintah berikut:

mysql_secure_installation

Jawab semua pertanyaan seperti yang ditunjukkan di bawah ini:

Enter current password for root (enter for none): 
Set root password? [Y/n] Y
New password: 
Re-enter new 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

Setelah MariaDB diamankan, masuk ke shell MariaDB:

mysql -u root -p

Berikan kata sandi root MariaDB Anda lalu buat database dan pengguna untuk Magento:

MariaDB [(none)]> CREATE DATABASE magentodb;
MariaDB [(none)]> CREATE USER 'magento'@'localhost' IDENTIFIED BY 'password';

Selanjutnya, berikan semua hak istimewa ke database Magento dengan perintah berikut:

MariaDB [(none)]> GRANT ALL ON magentodb.* TO 'magento'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;

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

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.

Unduh Magento

Pada saat penulisan tutorial ini, versi terbaru dari Magento adalah 2.3.5. Anda dapat mengunduhnya dari halaman unduhan resmi Magento.

Setelah diunduh, ekstrak file yang diunduh ke direktori root web Apache dengan perintah berikut:

mkdir /var/www/html/magento
tar -xvjf magento-ce* -C /var/www/html/magento/

Selanjutnya, berikan kepemilikan dan izin yang tepat ke direktori magento:

chown -R www-data:www-data /var/www/html/magento/
chmod -R 755 /var/www/html/magento/

Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.

Konfigurasi Apache untuk Magento

Selanjutnya, buat file konfigurasi virtual host Apache baru untuk melayani situs web Magento.

nano /etc/apache2/sites-available/magento.conf

Tambahkan baris berikut:

<VirtualHost *:80>
     ServerAdmin [email protected]
     DocumentRoot /var/www/html/magento/
     ServerName magento.linuxbuz.com
     <Directory /var/www/html/magento/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
     </Directory>
     ErrorLog ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Simpan dan tutup file kemudian aktifkan Magento virtual host dan Apache rewrite module dengan perintah berikut:

a2ensite magento.conf
a2enmod rewrite

Terakhir, restart layanan Apache untuk mengimplementasikan perubahan:

systemctl restart apache2

Pada titik ini, server web Apache dikonfigurasi untuk melayani Magento.

Amankan Magento dengan Let's Encrypt SSL

Itu selalu merupakan ide yang baik untuk mengamankan situs web Anda dengan Let's Encrypt SSL gratis. Pertama, instal klien Certbot di server Anda untuk mengunduh dan mengonfigurasi Let's Encrypt SSL untuk situs web Anda.

apt-get install certbot python3-certbot-apache -y

Setelah Certbot terinstal, jalankan perintah berikut untuk mengunduh dan menginstal Let's Encrypt SSL untuk situs web Anda:

certbot --apache -d magento.linuxbuz.com

Anda akan diminta untuk memberikan email yang valid dan menerima persyaratan layanan seperti yang ditunjukkan di bawah ini:

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 at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing 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

Obtaining a new certificate
Performing the following challenges:
http-01 challenge for magento.linuxbuz.com
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/magento-le-ssl.conf
Enabled Apache socache_shmcb module
Enabled Apache ssl module
Deploying Certificate to VirtualHost /etc/apache2/sites-available/magento-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/magento-le-ssl.conf

Selanjutnya, Anda akan diminta untuk memilih apakah akan mengalihkan lalu lintas HTTP ke HTTPS atau tidak:

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

Ketik 2 dan tekan Enter untuk menyelesaikan penginstalan.

Redirecting vhost in /etc/apache2/sites-enabled/magento.conf to ssl vhost in /etc/apache2/sites-available/magento-le-ssl.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://magento.linuxbuz.com

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=magento.linuxbuz.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/magento.linuxbuz.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/magento.linuxbuz.com/privkey.pem
   Your cert will expire on 2020-08-11. 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"
 - Your account credentials have been saved in your Certbot
   configuration directory at /etc/letsencrypt. You should make a
   secure backup of this folder now. This configuration directory will
   also contain certificates and private keys obtained by Certbot so
   making regular backups of this folder is ideal.
 - 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

Akses Situs Web Magento

Pada titik ini, situs web Magento Anda diamankan dengan Let's Encrypt SSL.

Sekarang, buka browser web Anda dan ketik URL https://magento.linuxbuz.com. Anda akan diarahkan ke wizard penginstalan berbasis web Magento:

Klik tombol Setuju dan Penyiapan Magento tombol. Anda akan melihat layar Kesiapan Magento:

Klik tombol Mulai Kesiapan Periksa tombol. Setelah pemeriksaan Kesiapan selesai, Anda akan melihat layar berikut:

Klik Berikutnya tombol. Anda akan melihat layar pengaturan Database:

Berikan nama basis data Magento Anda, nama pengguna basis data, kata sandi dan klik tombol Berikutnya tombol. Anda akan melihat wizard konfigurasi web Magento:

Berikan alamat Magento Store dan Admin Anda, Aktifkan HTTPS dan klik Berikutnya tombol. Anda akan melihat layar kustomisasi Store:

Tetapkan Zona Waktu, Mata Uang, Bahasa pilihan Anda dan klik Berikutnya tombol. Anda akan melihat layar pembuatan pengguna admin:

Berikan nama pengguna, email, kata sandi admin Anda dan klik tombol Berikutnya tombol. Anda akan melihat layar berikut:

Klik pada Pasang Sekarang tombol untuk memulai instalasi. Setelah instalasi berhasil diselesaikan, Anda akan melihat layar berikut:

Klik pada alamat admin Magento. Anda akan melihat halaman admin Magento:

Berikan nama pengguna, kata sandi admin Magento Anda, dan klik Tanda di tombol. Anda akan melihat dasbor Magento di layar berikut:

Anda juga dapat mengakses toko Magento menggunakan URL https://magento.linuxbuz.com. Anda akan melihat layar berikut:

Kesimpulan

Selamat! Anda telah berhasil menginstal Magento dengan Let's Encrypt SSL di Ubuntu 20.04. Anda sekarang dapat menyebarkan toko online Anda sendiri dengan mudah. Jangan ragu untuk bertanya kepada saya jika Anda memiliki pertanyaan.


Ubuntu
  1. Cara Mengamankan Nginx dengan Lets Encrypt Di Ubuntu 20.04 / 18.04

  2. Instalasi WordPress di Ubuntu Linux dengan Apache dan MySQL

  3. Amankan Nginx dengan Lets Encrypt di Ubuntu 18.04

  1. Amankan Nginx dengan Lets Encrypt di Ubuntu 16.04

  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 Mengatur Magento 2 Dengan Varnish dan Apache di Ubuntu 16.04

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

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