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

Instal Magento 2 di CentOS 7

Magento adalah platform e-niaga kelas perusahaan terkemuka yang dibangun di atas teknologi sumber terbuka yang menggabungkan fitur-fitur canggih dengan fleksibilitas dan antarmuka yang ramah pengguna.

Dengan fitur-fitur seperti Pengalaman Belanja yang Menarik, Arsitektur Modular Fleksibel, serta Skalabilitas dan Kinerja tingkat Perusahaan, Magento adalah platform pilihan bagi sebagian besar penjual online.

Ini adalah posting pertama dalam seri Cara menginstal dan mengkonfigurasi Magento 2 di CentOS 7. Dalam tutorial ini, kami akan memandu Anda melalui langkah-langkah menginstal Magento 2 di mesin CentOS 7.

Prasyarat #

Sebagai prasyarat untuk mengikuti tutorial ini, Anda memerlukan:

  • Server CentOS 7, menurut persyaratan sistem resmi Magento 2, Anda memerlukan setidaknya 2G RAM. Jika Anda menggunakan server dengan RAM kurang dari 2 GB, Anda harus membuat file swap.
  • Masuk sebagai akun pengguna dengan hak istimewa sudo.
  • Nama domain yang menunjuk ke IP server publik Anda. Dalam tutorial ini, kita akan menggunakan example.com .
  • Menginstal dan mengonfigurasi Nginx, MySQL, dan PHP 7.1. Jika belum, lihat panduan LEMP di CentOS 7.
  • Sertifikat SSL yang valid. Jika Anda belum memilikinya, Anda dapat membuat sertifikat SSL Let's Encrypt gratis dengan mengikuti Secure Nginx dengan Let's Encrypt di CentOS 7.

Pasangan Kunci Akses Magento #

Kami perlu membuat kunci akses untuk mengautentikasi akses ke repositori kode Magento 2 serta ekstensi dan tema pihak ketiga.

Jika Anda tidak memiliki akun Magento Marketplace, Anda dapat membuatnya di sini. Setelah Anda membuat akun, harap periksa petunjuk berikut tentang cara membuat set kunci akses baru.

Buat Database MySQL #

Magento 2 kompatibel dengan MySQL 5.6 dan 5.7, MariaDB 10.x dan Percona 5.7. Jika Anda tidak menginstal MySQL atau MariaDB di server Anda, Anda dapat memeriksa panduan ini.

Masuk ke shell MySQL:

mysql -u root -p

Dan jalankan perintah berikut untuk membuat database dan pengguna baru dan memberikan hak istimewa kepada pengguna tersebut atas database yang baru dibuat:

CREATE DATABASE magento;GRANT ALL ON magento.* TO magento@localhost IDENTIFIED BY 'P4ssvv0rD';

Instal ekstensi PHP #

Kami berasumsi bahwa Anda telah mengaktifkan repositori PHP 7.1 Remi menggunakan panduan kami.

Instal semua ekstensi PHP yang diperlukan dengan perintah berikut:

sudo yum install php-mysql php-opcache php-xml php-mcrypt php-gd php-soap php-redis php-bcmath php-intl php-mbstring php-json php-iconv php-fpm php-zip

Setelah instalasi selesai, atur opsi PHP yang diperlukan dan direkomendasikan dengan mengedit php.ini file dengan sed :

sudo sed -i "s/memory_limit = .*/memory_limit = 756M/" /etc/php.inisudo sed -i "s/upload_max_filesize = .*/upload_max_filesize = 256M/" /etc/php.inisudo sed -i "s/zlib.output_compression = .*/zlib.output_compression = on/" /etc/php.inisudo sed -i "s/max_execution_time = .*/max_execution_time = 18000/" /etc/php.inisudo sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php.inisudo sed -i "s/;opcache.save_comments.*/opcache.save_comments = 1/" /etc/php.d/10-opcache.ini

Instal Komposer #

Composer adalah manajer ketergantungan untuk PHP yang digunakan untuk menginstal, memperbarui, dan mengelola perpustakaan.

Untuk menginstal composerglobal, unduh penginstal Composer dengan curl dan pindahkan file ke /usr/local/bin direktori:

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

Buat Pengguna Sistem baru #

Buat pengguna dan grup baru, yang akan menjalankan instalasi Magento kami, untuk kesederhanaan kami akan memberi nama pengguna kami magento :

sudo useradd -m -U -r -d /opt/magento magento

Tambahkan nginx pengguna ke magento grup dan ubah /opt/magento izin direktorisehingga Nginx dapat mengakses instalasi Magento kami:

sudo usermod -a -G magento nginxsudo chmod 750 /opt/magento

Konfigurasi PHP FPM #

Selanjutnya, kita perlu mengonfigurasi PHP dan membuat kumpulan FPM untuk magento kita pengguna.

Buka editor teks Anda dan buat file berikut:

/etc/php-fpm.d/magento.conf
[magento]
user = magento
group = nginx
listen.owner = magento
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 file dan mulai ulang layanan PHP FPM agar perubahan diterapkan:

sudo systemctl restart php-fpm

Instal Magento #

Ada beberapa cara untuk menginstal Magento. Hindari menginstal Magento dari repositori Github karena versi tersebut ditujukan untuk pengembangan dan bukan untuk instalasi produksi. Dalam tutorial ini, kita akan menginstal Magento dari repositori mereka menggunakan composer.

Beralih ke penggunamagento :

sudo su - magento

Mulai penginstalan dengan mengunduh file magento ke /opt/magento/public_html direktori:

composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition /opt/magento/public_html

Selama pembuatan proyek, komposer akan meminta Anda untuk memasukkan kunci akses, menyalin kunci dari akun pasar Magento Anda dan menyimpannya di auth.json file, jadi nanti saat memperbarui instalasi Anda, Anda tidak perlu menambahkan kunci yang sama lagi.

    Authentication required (repo.magento.com):
      Username: e758ec1745d190520ca246e4e832e12c
      Password:
Do you want to store credentials for repo.magento.com in /opt/magento/.config/composer/auth.json ? [Yn]

Setelah proyek dibuat, kita dapat memulai instalasi. Kita dapat menginstal Magento baik dengan menggunakan baris perintah atau menggunakan web Setup Wizard. Dalam tutorial ini, kita akan menginstal Magento menggunakan baris perintah.

Kami akan menggunakan opsi berikut untuk menginstal toko Magento kami:

  • URL aman Basis dan Basis disetel ke https://example.com , ubah dengan domain Anda.
  • Administrator Magento:
    • John Doe sebagai nama depan dan belakang.
    • [email protected] sebagai email.
    • john sebagai nama pengguna dan j0hnP4ssvv0rD sebagai kata sandi.
  • Nama basis data magento , nama pengguna magento , kata sandi P4ssvv0rD , dan server database berada di host yang sama dengan server web.
  • en_US , Bahasa Inggris AS sebagai bahasa default.
  • USD dolar sebagai mata uang default.
  • America/Chicago sebagai zona waktu.
Anda dapat menemukan semua opsi penginstalan di sini.

Ubah ke ~/public_html Magento direktori:

cd ~/public_html

Jalankan perintah berikut untuk memulai instalasi:

php bin/magento setup:install --base-url=https://example.com/ \
                        --base-url-secure=https://example.com/ \
                        --admin-firstname="John" \
                        --admin-lastname="Doe" \
                        --admin-email="[email protected]" \
                        --admin-user="john" \
                        --admin-password="j0hnP4ssvv0rD" \
                        --db-name="magento" \
                        --db-host="localhost" \
                        --db-user="magento" \
                        --currency=USD \
                        --timezone=America/Chicago \
                        --use-rewrites=1 \
                        --db-password="P4ssvv0rD"
Jangan lupa ganti passwordnya (j0hnP4ssvv0rD ) untuk sesuatu yang lebih aman.

Jika penginstalan berhasil, Anda akan disajikan pesan yang berisi URI ke dasbor admin Magento.

[Progress: 485 / 485]
[SUCCESS]: Magento installation complete.
[SUCCESS]: Magento Admin URI: /admin_1csalp
Nothing to import.

Buat crontab Magento #

Magento menggunakan tugas cron untuk menjadwalkan tugas seperti pengindeksan ulang, notifikasi, peta situs, email, dan lainnya.

Untuk membuat crontab Magento jalankan perintah berikut sebagai magento pengguna:

php ~/public_html/bin/magento cron:install

Kami dapat memverifikasi bahwa crontab telah diinstal dengan menjalankan:

crontab -l
#~ MAGENTO START adc062915d7b30804a2b340095af072d
* * * * * /usr/bin/php /opt/magento/public_html/bin/magento cron:run 2>&1 | grep -v "Ran jobs by schedule" >> /opt/magento/public_html/var/log/magento.cron.log
* * * * * /usr/bin/php /opt/magento/public_html/update/cron.php >> /opt/magento/public_html/var/log/update.cron.log
* * * * * /usr/bin/php /opt/magento/public_html/bin/magento setup:cron:run >> /opt/magento/public_html/var/log/setup.cron.log
#~ MAGENTO END adc062915d7b30804a2b340095af072d

Konfigurasi Nginx #

Jika Anda mengikuti panduan LEMP kami di CentOS 7, Anda seharusnya sudah menginstal Nginx di mesin Anda. Sekarang kita hanya perlu membuat blok server baru untuk instalasi Magento kita. Kami akan menyertakan konfigurasi Nginx default yang dikirimkan bersama magento:

/etc/nginx/conf.d/example.com.conf
upstream fastcgi_backend {
  server   unix:/run/php-fpm/magento.sock;
}

server {
    listen 80;
    server_name example.com www.example.com;

    include snippets/letsencrypt.conf;
    return 301 https://example.com$request_uri;
}

server {
    listen 443 ssl http2;
    server_name www.example.com;

    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
    include snippets/ssl.conf;

    return 301 https://example.com$request_uri;
}

server {
    listen 443 ssl http2;
    server_name example.com;

    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
    include snippets/ssl.conf;

    set $MAGE_ROOT /opt/magento/public_html;
    set $MAGE_MODE developer; # or production

    access_log /var/log/nginx/example.com-access.log;
    error_log /var/log/nginx/example.com-error.log;

    include /opt/magento/public_html/nginx.conf.sample;
}

Muat ulang layanan Nginx agar perubahan diterapkan:

sudo systemctl reload nginx

Terakhir, Anda seharusnya dapat masuk ke instalasi Magento di https://example.com/admin_1csalp menggunakan pengguna admin yang Anda tentukan saat menjalankan pemasang Magento.


Cent OS
  1. Cara Menginstal Vagrant di CentOS 7

  2. Cara Menginstal Gitea di CentOS 8

  3. Instal Jenkins di CentOS 8

  1. Cara Menginstal Memcached di CentOS 8

  2. Cara Menginstal Nginx di CentOS 7

  3. Cara Menginstal Apache di CentOS 7

  1. Cara Menginstal Tomcat 8.5 di CentOS 7

  2. Cara Menginstal Jenkins di CentOS 7

  3. Cara Menginstal Tomcat 9 di CentOS 7