Cara Memasang Platform Sylius eCommerce di CentOS 7

Sylius adalah platform e-commerce modern untuk PHP, berdasarkan pada Symfony Framework. Kode sumber Sylius di-host di GitHub .

Panduan ini akan memandu Anda melalui proses instalasi Sylius pada instance CentOS 7 Vultr yang baru menggunakan PHP, MariaDB sebagai database, dan Nginx sebagai server web.

Persyaratan

Untuk dapat menginstal Sylius, Anda perlu:

  • Contoh server Vultr dengan memori setidaknya 2048 MB.
  • Nginx atau Apache. Dalam panduan ini, kami menggunakan Nginx.
  • PHP versi 7.2 atau lebih besar dengan beberapa ekstensi tertentu PHP: gd, exif, fileinfo,intl
  • Pengaturan konfigurasi PHP: memory_limitsama dengan atau lebih besar dari 1024M,date.timezone
  • MySQL versi 5.7 atau 8.0 atau setara MariaDB
  • Komposer
  • Node.js
  • Benang

Sebelum kamu memulai

Periksa versi CentOS.

cat /etc/centos-release
# CentOS Linux release 7.6.1810 (Core)

Buat non-rootakun pengguna baru dengan sudoakses dan alihkan ke sana.

useradd -c "John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe

CATATAN: Ganti johndoedengan nama pengguna Anda.

Siapkan zona waktu.

timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

Pastikan sistem Anda mutakhir.

sudo yum update

Instal paket yang dibutuhkan.

sudo yum install -y socat git wget unzip vim

Nonaktifkan SELinux dan Firewall.

sudo setenforce 0 ; sudo systemctl stop firewalld ; sudo systemctl disable firewalld

Instal PHP

Atur repo YUM Webtatic.

sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Instal PHP dan ekstensi PHP yang diperlukan.

sudo yum install -y php72w-cli php72w-fpm php72w-common php72w-mysqlnd php72w-gd php72w-intl php72w-zip php72w-curl php72w-xml php72w-mbstring php72w-json

Periksa versinya.

php --version
# PHP 7.2.21 (cli) (built: Aug  4 2019 08:42:27) ( NTS )

Mulai dan aktifkan PHP-FPM.

sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service

Jalankan sudo vim /etc/php.inidan atur memory_limitke 1024Matau lebih, dan atur date.timezone.

memory_limit = 1024M
date.timezone = Region/City

Mulai ulang PHP-FPM.

sudo systemctl restart php-fpm.service

Instal MariaDB dan buat database

Instal server database MariaDB.

sudo vi /etc/yum.repos.d/MariaDB.repo


# Copy/paste this to the /etc/yum.repos.d/MariaDB.repo file

[mariadb]
name = MariaDB
baseurl = https://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

sudo yum install -y MariaDB-server MariaDB-client

Periksa versinya.

mysql --version
# mysql  Ver 15.1 Distrib 10.2.16-MariaDB, for Linux (x86_64) using readline 5.1

Mulai dan aktifkan MariaDB.

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Jalankan mysql_secure installationskrip untuk meningkatkan keamanan MariaDB dan setel kata sandi untuk rootpengguna MariaDB .

sudo mysql_secure_installation

Terhubung ke shell MariaDB sebagai pengguna root.

sudo mysql -u root -p
# Enter password

Buat database dan pengguna MariaDB kosong untuk Sylius, dan ingat kredensial.

CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
exit

CATATAN: Ganti dbnamedan usernamedengan nama yang sesuai untuk pengaturan Anda. Ganti passworddengan kata sandi yang kuat.

Instal Nginx

Instal Nginx.

sudo yum install -y nginx

Periksa versinya.

nginx -v
# nginx version: nginx/1.12.2

Mulai dan aktifkan Nginx.

sudo systemctl start nginx.service
sudo systemctl enable nginx.service

Konfigurasikan Nginx untuk Sylius. Jalankan sudo vim /etc/nginx/conf.d/sylius.confdan isi file dengan konfigurasi berikut.

server {
  listen 80;
  server_name example.com;
  root /var/www/sylius/public;
  location / {
    try_files $uri /index.php$is_args$args;
  }
  location ~ ^/index\.php(/|$) {
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_split_path_info ^(.+\.php)(/.*)$;
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
    fastcgi_param DOCUMENT_ROOT $realpath_root;
    internal;
  }
  location ~ \.php$ {
    return 404;
  }
  client_max_body_size 6m;
}

Simpan file dan keluar dengan :+ W+ Q.

Uji konfigurasinya.

sudo nginx -t

Muat ulang Nginx.

sudo systemctl reload nginx.service

Pasang Komposer

Instal Komposer secara global.

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === 'a5c698ffe4b8e849a443b120cd5ba38043260d5c4023dbf93e1558871f1f07f58274fc6f4c93bcfd858c6bd0775cd8d1') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer

Periksa versinya.

composer --version
# Composer version 1.9.0 2019-08-02 20:55:32

Instal Node.js

Instal Node.js.

sudo yum install -y gcc-c++ make
sudo -s
curl -sL https://rpm.nodesource.com/setup_10.x | bash -
exit
sudo yum install -y nodejs

Periksa versinya.

node --version
# v10.16.3

Instal Benang

Instal manajer paket Benang.

curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
sudo yum install -y yarn

Periksa versinya.

yarn --version
# 1.17.3

Pasang Sylius

Buat direktori root dokumen.

sudo mkdir -p /var/www/sylius

Ubah kepemilikan /var/www/syliusdirektori menjadi johndoe.

sudo chown -R johndoe:johndoe /var/www/sylius

Arahkan ke folder root dokumen.

cd /var/www/sylius

Memulai proyek Sylius baru dengan menjalankan perintah ini:

composer create-project sylius/sylius-standard .

Jalankan vim .env.localuntuk memasukkan detail basis data dan menjalankan Sylius di lingkungan pilihan.

APP_ENV=prod
DATABASE_URL=mysql://username:[email protected]/dbname

CATATAN: Ganti username, passworddan dbnamedengan detail basis data Anda.

Setelah semuanya ada, jalankan perintah berikut untuk menginstal Sylius:

php bin/console sylius:install -e prod 

Untuk melihat front-end yang berfungsi penuh, Anda harus memasang asetnya. Sylius menggunakan Gulp untuk membangun aset front-end menggunakan Benang sebagai pengelola paket JavaScript. Setelah Benang terpasang, buka direktori proyek Anda untuk menginstal dependensi.

yarn install

Kemudian bangun aset front-end dengan menjalankan:

yarn build

Ubah kepemilikan /var/www/syliusdirektori menjadi nginx.

sudo chown -R nginx:nginx /var/www/sylius

Jalankan sudo vim /etc/php-fpm.d/www.confdan atur pengguna dan grup ke nginx. Awalnya, mereka akan ditetapkan menjadi apache.

sudo vi /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx

Buat /var/lib/php/session/direktori dan ubah kepemilikan menjadi nginx.

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

Mulai ulang layanan PHP-FPM.

sudo systemctl restart php-fpm.service

Platform e-commerce Sylius diinstal. Secara default, panel administrasi merutekan ke /admin.



Leave a Comment

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

6 Hal yang Sangat Menggila dari Nintendo Switch

6 Hal yang Sangat Menggila dari Nintendo Switch

Banyak dari Anda tahu Switch keluar pada Maret 2017 dan fitur-fitur barunya. Bagi yang belum tahu, kami sudah menyiapkan daftar fitur yang membuat 'Switch' menjadi 'gadget yang wajib dimiliki'.

Janji Teknologi Yang Masih Belum Ditepati

Janji Teknologi Yang Masih Belum Ditepati

Apakah Anda menunggu raksasa teknologi untuk memenuhi janji mereka? periksa apa yang belum terkirim.

Fungsionalitas Lapisan Arsitektur Referensi Big Data

Fungsionalitas Lapisan Arsitektur Referensi Big Data

Baca blog untuk mengetahui berbagai lapisan dalam Arsitektur Big Data dan fungsinya dengan cara yang paling sederhana.

Bagaimana AI Dapat Membawa Otomatisasi Proses ke Tingkat Selanjutnya?

Bagaimana AI Dapat Membawa Otomatisasi Proses ke Tingkat Selanjutnya?

Baca ini untuk mengetahui bagaimana Kecerdasan Buatan menjadi populer di antara perusahaan skala kecil dan bagaimana hal itu meningkatkan kemungkinan untuk membuat mereka tumbuh dan memberi keunggulan pada pesaing mereka.

CAPTCHA: Berapa Lama Itu Bisa Tetap Menjadi Teknik yang Layak Untuk Perbedaan Human-AI?

CAPTCHA: Berapa Lama Itu Bisa Tetap Menjadi Teknik yang Layak Untuk Perbedaan Human-AI?

CAPTCHA telah berkembang cukup sulit bagi pengguna untuk dipecahkan dalam beberapa tahun terakhir. Apakah itu akan tetap efektif dalam deteksi spam dan bot di masa mendatang?

Singularitas Teknologi: Masa Depan Peradaban Manusia yang Jauh?

Singularitas Teknologi: Masa Depan Peradaban Manusia yang Jauh?

Saat Sains Berkembang dengan kecepatan tinggi, mengambil alih banyak upaya kita, risiko menundukkan diri kita pada Singularitas yang tidak dapat dijelaskan juga meningkat. Baca, apa arti singularitas bagi kita.

Telemedicine Dan Perawatan Kesehatan Jarak Jauh: Masa Depan Ada Di Sini

Telemedicine Dan Perawatan Kesehatan Jarak Jauh: Masa Depan Ada Di Sini

Apa itu telemedicine, perawatan kesehatan jarak jauh dan dampaknya terhadap generasi mendatang? Apakah itu tempat yang bagus atau tidak dalam situasi pandemi? Baca blog untuk menemukan tampilan!

Pernahkah Anda Bertanya-tanya Bagaimana Hacker Menghasilkan Uang?

Pernahkah Anda Bertanya-tanya Bagaimana Hacker Menghasilkan Uang?

Anda mungkin pernah mendengar bahwa peretas menghasilkan banyak uang, tetapi pernahkah Anda bertanya-tanya bagaimana cara mereka mendapatkan uang sebanyak itu? mari berdiskusi.

Pembaruan Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Masalah Daripada Menyelesaikan

Pembaruan Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Masalah Daripada Menyelesaikan

Baru-baru ini Apple merilis macOS Catalina 10.15.4 pembaruan suplemen untuk memperbaiki masalah tetapi tampaknya pembaruan menyebabkan lebih banyak masalah yang mengarah ke bricking mesin mac. Baca artikel ini untuk mempelajari lebih lanjut