วิธีการติดตั้งแพลตฟอร์ม e-commerce ของ Sylius บน Ubuntu 18.04 LTS

Syliusเป็นแพลตฟอร์มอี - คอมเมิร์ซที่ทันสมัยสำหรับ PHP โดยใช้ Symfony Framework แหล่ง Sylius อยู่บนGitHub

คู่มือนี้จะแนะนำคุณเกี่ยวกับกระบวนการติดตั้ง Sylius บนอินสแตนซ์ Ubuntu 18.04 LTS Vultr ให��่โดยใช้ PHP, MySQL เป็นฐานข้อมูลและ Nginx เป็นเว็บเซิร์ฟเวอร์

ความต้องการ

ในการติดตั้ง Sylius คุณจะต้อง:

  • อินสแตนซ์เซิร์ฟเวอร์ Vultr ที่มีหน่วยความจำอย่างน้อย 2048 MB
  • Nginx หรือ Apache ในคู่มือนี้เราใช้ Nginx
  • PHP รุ่น 7.2 หรือสูงกว่ากับบางนามสกุลเฉพาะ PHP: gd, exif, fileinfo,intl
  • การตั้งค่า PHP: memory_limitเท่ากับหรือสูงกว่า1024M,date.timezone
  • MySQL เวอร์ชั่น 5.7 หรือ 8.0
  • นักแต่งเพลง
  • Node.js
  • เส้นด้าย

ก่อนที่จะเริ่ม

ตรวจสอบเวอร์ชั่นของ Ubuntu

lsb_release -ds
# Ubuntu 18.04.2 LTS

สร้างnon-rootบัญชีผู้ใช้ใหม่ด้วยsudoการเข้าถึงและเปลี่ยนเป็นบัญชี

adduser johndoe --gecos "John Doe"
usermod -aG sudo johndoe
su - johndoe

หมายเหตุ : แทนที่johndoeด้วยชื่อผู้ใช้ของคุณ

ตั้งค่าเขตเวลา

sudo dpkg-reconfigure tzdata

ตรวจสอบให้แน่ใจว่าระบบของคุณทันสมัย

sudo apt update && sudo apt upgrade -y

ติดตั้งแพ็คเกจที่ต้องการ

sudo apt install -y git curl wget unzip socat

ติดตั้ง PHP

ติดตั้ง PHP และส่วนขยาย PHP ที่จำเป็น

sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-mysql php7.2-gd php7.2-intl php7.2-zip php7.2-curl php7.2-xml php7.2-mbstring

ตรวจสอบเวอร์ชั่น

php --version
# PHP 7.2.19-0ubuntu0.18.04.1 (cli) (built: Jun  4 2019 14:48:12) ( NTS )

เรียกใช้sudo vim /etc/php/7.2/fpm/php.iniและsudo vim /etc/php/7.2/cli/php.iniชุดmemory_limitที่จะหรือมากกว่าและการตั้งค่า1024Mdate.timezone

memory_limit = 1024M
date.timezone = Region/City

รีสตาร์ท PHP-FPM

sudo systemctl restart php7.2-fpm.service

ติดตั้ง MySQL และสร้างฐานข้อมูล

ติดตั้ง MySQL

sudo apt install -y mysql-server

ตรวจสอบเวอร์ชั่น

mysql --version && sudo mysqld --version
# mysql  Ver 14.14 Distrib 5.7.27, for Linux (x86_64) using  EditLine wrapper
# mysqld  Ver 5.7.27-0ubuntu0.18.04.1 for Linux on x86_64 ((Ubuntu))

เรียกใช้mysql_secure installationสคริปต์เพื่อปรับปรุงความปลอดภัยของ MySQL และตั้งรหัสผ่านสำหรับrootผู้ใช้MySQL

sudo mysql_secure_installation

Would you like to setup VALIDATE PASSWORD plugin? N
Please set the password for root here.
New password: **********************
Re-enter new password: **********************
Remove anonymous users? Y
Disallow root login remotely? Y
Remove test database and access to it? Y
Reload privilege tables now? Y

Success.

All done!

เชื่อมต่อกับ MySQL shell ในฐานะผู้ใช้รูท

sudo mysql -u root -p
# Enter password

สร้างฐานข้อมูล MySQL ว่างเปล่าและผู้ใช้สำหรับ Sylius และจดจำข้อมูลประจำตัว

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

หมายเหตุ: แทนที่dbnameและusernameด้วยชื่อที่เหมาะสมสำหรับการตั้งค่าของคุณ แทนที่passwordด้วยรหัสผ่านที่คาดเดายาก

ติดตั้ง Nginx

ติดตั้ง Nginx

sudo apt install -y nginx

ตรวจสอบเวอร์ชั่น

sudo nginx -v
# nginx version: nginx/1.14.0 (Ubuntu)

กำหนดค่า Nginx สำหรับ Sylius รันsudo vim /etc/nginx/sites-available/sylius.confและเติมไฟล์ด้วยการกำหนดค่าต่อไปนี้

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 unix:/run/php/php7.2-fpm.sock;
    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;
}

บันทึกไฟล์และออกด้วย:+ +WQ

เปิดใช้งานการsylius.confกำหนดค่าใหม่โดยเชื่อมโยงไฟล์ไปยังsites-enabledไดเรกทอรี

sudo ln -s /etc/nginx/sites-available/sylius.conf /etc/nginx/sites-enabled/

ทดสอบการกำหนดค่า

sudo nginx -t

โหลดซ้ำ Nginx

sudo systemctl reload nginx.service

ติดตั้งนักแต่งเพลง

ติดตั้งนักแต่งเพลงทั่วโลก

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

ตรวจสอบเวอร์ชั่น

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

ติดตั้ง Node.js

ติดตั้ง Node.js.

curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
sudo apt install -y nodejs

ตรวจสอบเวอร์ชั่น

node --version
# v10.16.2

ติดตั้งไหมพรม

ติดตั้งตัวจัดการแพ็คเกจของ Yarn

curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt-get update && sudo apt-get install yarn

ตรวจสอบเวอร์ชั่น

yarn --version
# 1.17.3

ติดตั้ง Sylius

สร้างไดเรกทอรีรากของเอกสาร

sudo mkdir -p /var/www/sylius

เปลี่ยนความเป็นเจ้าของของไดเรกทอรีไป/var/www/syliusjohndoe

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

นำทางไปยังโฟลเดอร์รูทเอกสาร

cd /var/www/sylius

เริ่มต้นโครงการ Sylius ใหม่โดยการรันคำสั่งนี้:

composer create-project sylius/sylius-standard .

วิ่งvim .env.localเพื่อป้อนรายละเอียดฐานข้อมูลและเรียกใช้ Sylius ในสภาพแวดล้อมที่เลือก

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

หมายเหตุ: แทนที่username, passwordและdbnameมีรายละเอียดฐานข้อมูลของคุณ

หลังจากที่ทุกอย่างเข้าที่แล้วให้รันคำสั่งต่อไปนี้เพื่อติดตั้ง Sylius:

php bin/console sylius:install -e prod 

เพื่อที่จะเห็นส่วนหน้าใช้งานได้อย่างสมบูรณ์คุณจะต้องติดตั้งเนื้อหา Sylius ใช้ Gulp เพื่อสร้างเนื้อหาส่วนหน้าโดยใช้ Yarn เป็นผู้จัดการแพ็คเกจ JavaScript เมื่อติดตั้ง Yarn แล้วให้ไปที่ไดเรกทอรีโครงการของคุณเพื่อติดตั้งการอ้างอิง

yarn install

จากนั้นสร้างสินทรัพย์ส่วนหน้าโดยเรียกใช้:

yarn build

เปลี่ยนความเป็นเจ้าของของไดเรกทอรีไป/var/www/syliuswww-data

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

ติดตั้งแพลตฟอร์มอีคอมเมิร์ซของ Sylius /adminโดยค่าเริ่มต้นเส้นทางแผงการบริหารเพื่อ



Leave a Comment

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS ซึ่งเป็นโอเพ่นซอร์สและระบบปฏิบัติการฟรีพร้อมเวอร์ชันล่าสุดแล้ว สามารถตอบสนองความต้องการของผู้ใช้ Windows ยุคใหม่และล้ม Microsoft ได้หรือไม่? มาหาข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบเก่านี้ แต่เป็นประสบการณ์ OS ที่ใหม่กว่ากัน

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

การโจมตีของ Ransomware กำลังเพิ่มขึ้น แต่ AI สามารถช่วยจัดการกับไวรัสคอมพิวเตอร์ตัวล่าสุดได้หรือไม่? AI คือคำตอบ? อ่านที่นี่รู้ว่า AI boone หรือ bane

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

ในที่สุด Whatsapp ก็เปิดตัวแอพเดสก์ท็อปสำหรับผู้ใช้ Mac และ Windows ตอนนี้คุณสามารถเข้าถึง Whatsapp จาก Windows หรือ Mac ได้อย่างง่ายดาย ใช้ได้กับ Windows 8+ และ Mac OS 10.9+

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

อ่านข้อมูลนี้เพื่อทราบว่าปัญญาประดิษฐ์กำลังได้รับความนิยมในหมู่บริษัทขนาดเล็กอย่างไร และเพิ่มโอกาสในการทำให้พวกเขาเติบโตและทำให้คู่แข่งได้เปรียบ

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

เมื่อเร็ว ๆ นี้ Apple เปิดตัว macOS Catalina 10.15.4 การอัปเดตเสริมเพื่อแก้ไขปัญหา แต่ดูเหมือนว่าการอัปเดตทำให้เกิดปัญหามากขึ้นที่นำไปสู่การสร้างเครื่อง Mac อ่านบทความนี้เพื่อเรียนรู้เพิ่มเติม

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

คอมพิวเตอร์ของเราจัดเก็บข้อมูลทั้งหมดในลักษณะที่เรียกว่าระบบไฟล์บันทึก เป็นวิธีการที่มีประสิทธิภาพที่ช่วยให้คอมพิวเตอร์สามารถค้นหาและแสดงไฟล์ได้ทันทีที่คุณกดค้นหาhttps://wethegeek.com/?p=94116&preview=true

ภาวะเอกฐานทางเทคโนโลยี: อนาคตอันห่างไกลของอารยธรรมมนุษย์?

ภาวะเอกฐานทางเทคโนโลยี: อนาคตอันห่างไกลของอารยธรรมมนุษย์?

ในขณะที่วิทยาศาสตร์มีวิวัฒนาการไปอย่างรวดเร็ว โดยรับช่วงต่อความพยายามของเราอย่างมาก ความเสี่ยงในการทำให้ตัวเองตกอยู่ในภาวะภาวะเอกฐานที่อธิบายไม่ได้ก็เพิ่มขึ้นเช่นกัน อ่านว่าภาวะเอกฐานอาจมีความหมายสำหรับเราอย่างไร

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ผลกระทบของปัญญาประดิษฐ์ในการดูแลสุขภาพ 2021

ผลกระทบของปัญญาประดิษฐ์ในการดูแลสุขภาพ 2021

AI ในการดูแลสุขภาพได้ก้าวกระโดดอย่างมากจากทศวรรษที่ผ่านมา ดังนั้นอนาคตของ AI ในการดูแลสุขภาพจึงยังคงเติบโตทุกวัน