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

Cara Menginstal Magento di CentOS 8

Magento adalah salah satu platform e-niaga sumber terbuka paling populer yang memungkinkan Anda menyiapkan situs web e-niaga dan toko online dalam hitungan menit. Itu ditulis dalam PHP, berdasarkan Zend Framework dan menggunakan model database Entity Attribute Value (EAV) untuk menyimpan data. Muncul dengan antarmuka yang sederhana dan ramah pengguna yang memungkinkan Anda untuk menyesuaikan toko online Anda dan menjual produk dan layanan Anda dengan mudah.

Dalam tutorial ini, kami akan menunjukkan cara menginstal platform eCommerce Magento di CentOS 8 dengan Let's Encrypt SSL gratis.

Persyaratan

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

Instal Server LEMP

Pertama, instal server web Nginx, server database MariaDB, PHP, dan library PHP lain yang diperlukan dengan menjalankan perintah berikut:

dnf install nginx mariadb-server php php-cli php-mysqlnd php-opcache php-xml php-gd php-soap php-bcmath php-intl php-mbstring php-json php-iconv php-fpm php-zip unzip git -y

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

systemctl start nginx
systemctl start mariadb
systemctl start php-fpm
systemctl enable nginx
systemctl enable mariadb
systemctl enable php-fpm

Selanjutnya, Anda perlu mengedit file php.ini dan mengubah beberapa pengaturan:

nano /etc/php.ini

Ubah baris berikut:

memory_limit =512M
upload_max_filesize = 200M
zlib.output_compression = On 
max_execution_time = 300 
date.timezone = Asia/Kolkata

Simpan dan tutup file setelah Anda selesai.

Konfigurasi Basis Data

Secara default, MariaDB tidak diamankan sehingga Anda harus mengamankannya terlebih dahulu. Jalankan skrip berikut untuk mengamankan MariaDB:

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 selesai, masuk ke shell MariaDB dengan perintah berikut:

mysql -u root -p

Berikan kata sandi root Anda saat diminta kemudian buat database dan pengguna untuk Magento seperti yang ditunjukkan di bawah ini:

MariaDB [(none)]> CREATE DATABASE magentodb;
MariaDB [(none)]> GRANT ALL ON magentodb.* TO [email protected] IDENTIFIED BY 'password';

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

MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;

Konfigurasi PHP-FPM untuk Magento

Selanjutnya, Anda perlu mengonfigurasi kumpulan PHP-FPM untuk instans Magento Anda. Anda dapat mengonfigurasinya dengan membuat file berikut:

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

Tambahkan baris berikut:

[magento]
user = nginx
group = nginx
listen.owner = nginx
listen.group = nginx
listen = /run/php-fpm/magento.sock
pm = ondemand
pm.max_children =  50
pm.process_idle_timeout = 10s
pm.max_requests = 500
chdir = /

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

systemctl restart php-fpm

Unduh Magento

Pertama, unduh versi terbaru Magento dari repositori Git menggunakan perintah berikut:

cd /var/www/html
wget https://github.com/magento/magento2/archive/2.3.zip

Setelah diunduh, unzip file yang diunduh seperti gambar di bawah ini:

unzip 2.3.zip

Selanjutnya pindahkan direktori hasil ekstrak ke magento2 seperti gambar di bawah ini:

mv magento2-2.3 magento2

Selanjutnya, Anda perlu menginstal Composer untuk menginstal dependensi PHP untuk Magento.

Anda dapat menginstal Komposer dengan perintah berikut:

curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer

Selanjutnya, ubah direktori ke magento2 dan instal semua dependensi Magento dengan perintah berikut:

cd /var/www/html/magento2
composer update
composer install

Selanjutnya, Anda perlu membuat crontab Magento untuk menjadwalkan tugas. Anda dapat membuatnya dengan perintah berikut:

./bin/magento cron:install

Anda dapat memverifikasi crontab menggunakan perintah berikut:

crontab -l

Anda akan mendapatkan output berikut:

#~ MAGENTO START f73db5f5dcf223372d4c9fab56bef0c1730eece898fad5cbee0c313b46b0dd1f
* * * * * /usr/bin/php /var/www/html/magento2/bin/magento cron:run 2>&1 | grep -v "Ran jobs by schedule" >> /var/www/html/magento2/var/log/magento.cron.log
* * * * * /usr/bin/php /var/www/html/magento2/update/cron.php >> /var/www/html/magento2/var/log/update.cron.log
* * * * * /usr/bin/php /var/www/html/magento2/bin/magento setup:cron:run >> /var/www/html/magento2/var/log/setup.cron.log
#~ MAGENTO END f73db5f5dcf223372d4c9fab56bef0c1730eece898fad5cbee0c313b46b0dd1f

Selanjutnya, berikan izin yang tepat ke direktori magento2:

chown -R nginx:nginx /var/www/html/magento2
chmod -R 755 /var/www/html/magento2

Konfigurasi Nginx untuk Magento

Selanjutnya, Anda perlu membuat file host virtual Nginx untuk Magento. Anda dapat membuatnya dengan perintah berikut:

nano /etc/nginx/conf.d/magento.conf

Tambahkan baris berikut:

upstream fastcgi_backend {
  server   unix:/run/php-fpm/magento.sock;
}

server {
    listen 80;
    server_name magento.linuxbuz.com;

    set $MAGE_ROOT /var/www/html/magento2;
    set $MAGE_MODE developer;

    access_log /var/log/nginx/magento-access.log;
    error_log /var/log/nginx/magento-error.log;

    include /var/www/html/magento2/nginx.conf.sample;
}

Simpan dan tutup file setelah Anda selesai. Kemudian, restart layanan Nginx dan PHP-FPM untuk menerapkan perubahan:

systemctl restart php-fpm
systemctl restart nginx

Konfigurasi SELinux dan Firewall

Secara default, SELinux diaktifkan di CentOS 8. Jadi, Anda perlu mengonfigurasi SELinux agar Magento berfungsi dengan benar.

Anda dapat mengkonfigurasi SELinux dengan perintah berikut:

semanage permissive -a httpd_t

Selanjutnya, Anda perlu membuat aturan firewall untuk mengizinkan layanan HTTP dan HTTPS dari jaringan eksternal. Anda dapat mengizinkannya dengan perintah berikut:

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

Amankan Magento dengan Let's Encrypt SSL

Magento sekarang diinstal dan dikonfigurasi. Saatnya mengamankannya dengan Let's Encrypt SSL gratis.

Untuk melakukannya, Anda perlu mengunduh klien certbot di server Anda. Anda dapat mengunduh dan mengatur izin yang benar dengan menjalankan 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

Sekarang, jalankan perintah berikut untuk mendapatkan dan menginstal sertifikat SSL untuk situs web Magento Anda.

certbot-auto --nginx -d magento.linuxbuz.com

Perintah di atas pertama-tama instal semua dependensi yang diperlukan seperti yang ditunjukkan di bawah ini:

Installed:
  gcc-8.2.1-3.5.el8.x86_64                                                  mod_ssl-1:2.4.37-12.module_el8.0.0+185+5908b0db.x86_64             
  python3-virtualenv-15.1.0-18.module_el8.0.0+33+0a10c0e1.noarch            python36-devel-3.6.8-2.module_el8.0.0+33+0a10c0e1.x86_64           
  redhat-rpm-config-116-1.el8.0.1.noarch                                    augeas-libs-1.10.1-8.el8.x86_64                                    
  libffi-devel-3.1-18.el8.x86_64                                            openssl-devel-1:1.1.1-8.el8.x86_64                                 
  annobin-8.64-1.el8.x86_64                                                 cpp-8.2.1-3.5.el8.x86_64                                           
  dwz-0.12-9.el8.x86_64                                                     efi-srpm-macros-3-2.el8.noarch                                     
  ghc-srpm-macros-1.4.2-7.el8.noarch                                        go-srpm-macros-2-16.el8.noarch                                     
  isl-0.16.1-6.el8.x86_64                                                   libmpc-1.0.2-9.el8.x86_64                                          
  ocaml-srpm-macros-5-4.el8.noarch                                          openblas-srpm-macros-2-2.el8.noarch                                
  perl-srpm-macros-1-25.el8.noarch                                          platform-python-devel-3.6.8-2.el8_0.0.1.x86_64                     
  python-rpm-macros-3-37.el8.noarch                                         python-srpm-macros-3-37.el8.noarch                                 
  python3-rpm-generators-5-4.el8.noarch                                     python3-rpm-macros-3-37.el8.noarch                                 
  qt5-srpm-macros-5.11.1-2.el8.noarch                                       rust-srpm-macros-5-2.el8.noarch                                    
  glibc-devel-2.28-42.el8.1.x86_64                                          glibc-headers-2.28-42.el8.1.x86_64                                 
  kernel-headers-4.18.0-80.11.2.el8_0.x86_64                                keyutils-libs-devel-1.5.10-6.el8.x86_64                            
  krb5-devel-1.16.1-22.el8.x86_64                                           libcom_err-devel-1.44.3-2.el8.x86_64                               
  libkadm5-1.16.1-22.el8.x86_64                                             libselinux-devel-2.8-6.el8.x86_64                                  
  libsepol-devel-2.8-2.el8.x86_64                                           libverto-devel-0.3.0-5.el8.x86_64                                  
  libxcrypt-devel-4.1.1-4.el8.x86_64                                        pcre2-devel-10.32-1.el8.x86_64                                     
  pcre2-utf16-10.32-1.el8.x86_64                                            pcre2-utf32-10.32-1.el8.x86_64                                     
  zlib-devel-1.2.11-10.el8.x86_64                                          

Complete!
Creating virtual environment...
Installing Python packages...
Installation succeeded.

Setelah semua dependensi terinstal, Anda akan diminta untuk memberikan alamat email Anda dan menyetujui persyaratan layanan seperti yang ditunjukkan di bawah ini:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator nginx, Installer nginx
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

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator nginx, Installer nginx
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for magento.linuxbuz.com
Waiting for verification...
Cleaning up challenges
Deploying Certificate to VirtualHost /etc/nginx/conf.d/magento.conf

Selanjutnya, Anda harus memilih apakah akan mengarahkan ulang lalu lintas HTTP ke HTTPS seperti yang ditunjukkan di bawah ini:

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 menginstal sertifikat SSL Let's Encrypt untuk domain Anda seperti yang ditunjukkan di bawah ini:

Redirecting all traffic on port 80 to ssl in /etc/nginx/conf.d/magento.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-03-23. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot-auto
   again with the "certonly" option. To non-interactively renew *all*
   of your certificates, run "certbot-auto 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

Akses Magento

Magento sekarang diinstal dan dikonfigurasi. Saatnya mengakses wizard penginstalan Magento.

Buka browser web Anda dan ketik URL https://magento.linuxbuz.com. Anda akan diarahkan ke halaman Selamat Datang Magento:

Klik Setuju dan Siapkan Magento tombol. Anda akan melihat wizard pemeriksaan kesiapan Magento:

Sekarang, klik Berikutnya tombol. Anda akan melihat halaman berikut:

Berikan detail basis data Anda dan klik Berikutnya tombol. Anda akan melihat halaman berikut:

Sekarang, berikan toko Magento dan URL admin Anda, dan klik Berikutnya tombol. Anda akan melihat halaman berikut:

Pilih zona waktu, mata uang, bahasa yang Anda inginkan dan klik Berikutnya tombol. Anda akan melihat halaman berikut:

Sekarang, berikan nama pengguna, kata sandi admin Magento Anda dan klik tombol Berikutnya tombol. Anda akan melihat halaman berikut:

Sekarang, klik tombol Instal Sekarang tombol untuk memulai instalasi Magento. Setelah instalasi selesai dengan sukses. Anda akan melihat halaman berikut:

Sekarang, klik Alamat Toko Anda tombol. Anda akan melihat toko Magento Anda di halaman berikut:

Untuk mengakses antarmuka Admin Magento, ketik URL https://magento.linuxbuz.com/admin_1teqss di browser web Anda. Anda akan diarahkan ke halaman Login Magento:

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

Itu saja untuk saat ini. Magento Anda sekarang diamankan dengan Let's Encrypt SSL gratis.


Cent OS
  1. Cara Menginstal MongoDB di CentOS 8

  2. Cara Instal Apache Cassandra di CentOS 7

  3. Cara Menginstal XWiki di CentOS 7

  1. Cara Menginstal R di CentOS 7

  2. Cara Menginstal R di CentOS 8

  3. Cara Menginstal Magento 2.1 di CentOS 7

  1. Cara Menginstal Streama di CentOS 7

  2. Cara Menginstal ReportServer di CentOS 7

  3. Cara Menginstal Webmin di CentOS 8