Πώς να εγκαταστήσετε την πλατφόρμα ηλεκτρονικού εμπορίου Sylius στο FreeBSD 12

Το Sylius είναι μια σύγχρονη πλατφόρμα ηλεκτρονικού εμπορίου για PHP, βασισμένη στο Symfony Framework. Ο πηγαίος κώδικας του Sylius φιλοξενείται στο GitHub .

Αυτός ο οδηγός θα σας καθοδηγήσει στη διαδικασία εγκατάστασης του Sylius σε μια νέα παρουσία του FreeBSD 12 Vultr χρησιμοποιώντας PHP, MariaDB ως βάση δεδομένων και 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 ή ισοδύναμο MariaDB
  • Συνθέτης
  • Node.js
  • Νήμα

Πριν ξεκινήσεις

Ελέγξτε την έκδοση του FreeBSD.

uname -ro # FreeBSD 12.0-RELEASE

Βεβαιωθείτε ότι το σύστημά σας FreeBSD είναι ενημερωμένο.

freebsd-update fetch install pkg update && pkg upgrade -y

Εγκαταστήστε τα απαραίτητα πακέτα.

pkg install -y sudo vim unzip curl wget bash socat git

Δημιουργήστε έναν νέο λογαριασμό χρήστη με το όνομα χρήστη που προτιμάτε. θα χρησιμοποιήσουμε johndoe.

adduser # Username: johndoe # Full name: John Doe # Uid (Leave empty for default): <Enter> # Login group [johndoe]: <Enter> # Login group is johndoe. Invite johndoe into other groups? []: wheel # Login class [default]: <Enter> # Shell (sh csh tcsh nologin) [sh]: bash # Home directory [/home/johndoe]: <Enter> # Home directory permissions (Leave empty for default): <Enter> # Use password-based authentication? [yes]: <Enter> # Use an empty password? (yes/no) [no]: <Enter> # Use a random password? (yes/no) [no]: <Enter> # Enter password: your_secure_password # Enter password again: your_secure_password # Lock out the account after creation? [no]: <Enter> # OK? (yes/no): yes # Add another user? (yes/no): no # Goodbye!

Εκτελέστε την visudoεντολή και αποσχολιάστε τη %wheel ALL=(ALL) ALLγραμμή, για να επιτρέψετε στα μέλη της wheelομάδας να εκτελέσουν οποιαδήποτε εντολή.

visudo # Uncomment by removing hash (#) sign # %wheel ALL=(ALL) ALL

Τώρα, μεταβείτε στον νέο χρήστη που δημιουργήσατε με su.

su - johndoe

ΣΗΜΕΙΩΣΗ: Αντικαταστήστε το johndoeμε το όνομα χρήστη σας.

Ρυθμίστε τη ζώνη ώρας.

sudo tzsetup

Εγκαταστήστε την PHP

Εγκαταστήστε την PHP και τις απαιτούμενες επεκτάσεις PHP.

sudo pkg install -y php73 php73-mbstring php73-tokenizer php73-pdo php73-pdo_mysql php73-openssl php73-hash php73-json php73-phar php73-filter php73-zlib php73-dom php73-xml php73-xmlwriter php73-xmlreader php73-curl php73-session php73-ctype php73-iconv php73-gd php73-simplexml php73-zip php73-filter php73-tokenizer php73-calendar php73-fileinfo php73-intl php73-phar php73-soap php73-xmlrpc php73-opcache php73-mysqli php73-bcmath php73-gmp php73-exif

Ελέγξτε την έκδοση.

php --version # PHP 7.3.8 (cli) (built: Aug 8 2019 01:28:36) ( NTS )

Μαλακή σύνδεση php.ini-productionμε php.ini.

sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini

Ενεργοποιήστε και ξεκινήστε το PHP-FPM.

sudo sysrc php_fpm_enable=yes sudo service php-fpm start

Εκτελέστε sudo vim /usr/local/etc/php.iniκαι ορίστε memory_limitσε 1024Mή περισσότερα και ρυθμίστε το date.timezone.

memory_limit = 1024M date.timezone = Region/City

Επανεκκινήστε το PHP-FPM.

sudo service php-fpm restart

Εγκαταστήστε το MariaDB και δημιουργήστε μια βάση δεδομένων

Εγκαταστήστε το MariaDB.

sudo pkg install -y mariadb102-client mariadb102-server

Ελέγξτε την έκδοση.

mysql --version # mysql Ver 15.1 Distrib 10.2.25-MariaDB, for FreeBSD12.0 (amd64) using readline 5.1

Ξεκινήστε και ενεργοποιήστε το MariaDB.

sudo sysrc mysql_enable="yes" sudo service mysql-server start

Εκτελέστε το mysql_secure installationσενάριο για να βελτιώσετε την ασφάλεια και ορίστε τον κωδικό πρόσβασης για τον rootχρήστη.

sudo mysql_secure_installation

Συνδεθείτε στο κέλυφος ως χρήστης root.

sudo mysql -u root -p # Enter password

Δημιουργήστε μια κενή βάση δεδομένων και χρήστη για το Sylius και θυμηθείτε τα διαπιστευτήρια.

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

ΣΗΜΕΙΩΣΗ: Αντικαταστήστε dbnameκαι usernameμε τα κατάλληλα ονόματα για τις ρυθμίσεις σας. Αντικαταστήστε passwordμε έναν ισχυρό κωδικό πρόσβασης.

Εγκαταστήστε το Nginx

Εγκαταστήστε το Nginx.

sudo pkg install -y nginx

Ελέγξτε την έκδοση.

nginx -v # nginx version: nginx/1.16.1

Ενεργοποιήστε και ξεκινήστε το Nginx.

sudo sysrc nginx_enable=yes sudo service nginx start

Διαμόρφωση του Nginx για Sylius. Εκτελέστε sudo vim /usr/local/etc/nginx/sylius.confκαι συμπληρώστε το αρχείο με την ακόλουθη διαμόρφωση.

server { listen 80; server_name example.com; root /usr/local/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; }

Αποθηκεύστε το αρχείο και βγείτε με :+ W+ Q.

Τώρα πρέπει να συμπεριλάβουμε sylius.confστο κύριο nginx.confαρχείο.

Εκτελέστε sudo vim /usr/local/etc/nginx/nginx.confκαι προσθέστε την ακόλουθη γραμμή στο http {}μπλοκ.

include sylius.conf;

Δοκιμάστε τη διαμόρφωση.

sudo nginx -t

Επαναφόρτωση Nginx.

sudo service nginx restart

Εγκαταστήστε το Composer

Εγκαταστήστε το Composer παγκοσμίως.

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.

sudo pkg install -y node

Ελέγξτε την έκδοση.

node --version # v12.4.0

Εγκαταστήστε το νήμα

Εγκαταστήστε τη διαχείριση πακέτων Yarn.

sudo pkg install -y yarn

Ελέγξτε την έκδοση.

yarn --version # 1.16.0

Εγκαταστήστε το Sylius

Δημιουργήστε έναν ριζικό κατάλογο εγγράφων.

sudo mkdir -p /usr/local/www/sylius

Αλλάξτε την ιδιοκτησία του /usr/local/www/syliusκαταλόγου σε johndoe.

sudo chown -R johndoe:johndoe /usr/local/www/sylius

Μεταβείτε στον ριζικό φάκελο του εγγράφου.

cd /usr/local/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

Για να δείτε ένα πλήρως λειτουργικό front-end, θα χρειαστεί να εγκαταστήσετε τα στοιχεία του. Ο Sylius χρησιμοποιεί το Gulp για τη δημιουργία στοιχείων διεπαφής χρησιμοποιώντας το Yarn ως διαχειριστή πακέτων JavaScript. Έχοντας εγκαταστήσει το Yarn, μεταβείτε στον κατάλογο του έργου σας για να εγκαταστήσετε τις εξαρτήσεις.

yarn install

Στη συνέχεια, δημιουργήστε τα στοιχεία διεπαφής εκτελώντας:

yarn build

Αλλάξτε την ιδιοκτησία του /usr/local/www/syliusκαταλόγου σε www.

sudo chown -R www:www /usr/local/www/sylius

Δημιουργία /var/lib/php/session/καταλόγου και αλλαγή ιδιοκτησίας σε www.

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

Επανεκκινήστε την υπηρεσία PHP-FPM.

sudo service php-fpm restart

Έχει εγκατασταθεί η πλατφόρμα ηλεκτρονικού εμπορίου Sylius. Από προεπιλογή, ο πίνακας διαχείρισης οδηγεί στο /admin.


Leave a Comment

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Η Τεχνητή Νοημοσύνη δεν είναι στο μέλλον, είναι εδώ ακριβώς στο παρόν Σε αυτό το blog Διαβάστε πώς οι εφαρμογές Τεχνητής Νοημοσύνης έχουν επηρεάσει διάφορους τομείς.

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Είστε επίσης θύμα των επιθέσεων DDOS και έχετε μπερδευτεί σχετικά με τις μεθόδους πρόληψης; Διαβάστε αυτό το άρθρο για να λύσετε τις απορίες σας.

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

Μπορεί να έχετε ακούσει ότι οι χάκερ κερδίζουν πολλά χρήματα, αλλά έχετε αναρωτηθεί ποτέ πώς κερδίζουν τέτοια χρήματα; ας συζητήσουμε.

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Θέλετε να δείτε επαναστατικές εφευρέσεις της Google και πώς αυτές οι εφευρέσεις άλλαξαν τη ζωή κάθε ανθρώπου σήμερα; Στη συνέχεια, διαβάστε στο blog για να δείτε τις εφευρέσεις της Google.

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Η ιδέα των αυτοκινούμενων αυτοκινήτων να βγαίνουν στους δρόμους με τη βοήθεια της τεχνητής νοημοσύνης είναι ένα όνειρο που έχουμε εδώ και καιρό. Όμως, παρά τις πολλές υποσχέσεις, δεν φαίνονται πουθενά. Διαβάστε αυτό το blog για να μάθετε περισσότερα…

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Καθώς η Επιστήμη εξελίσσεται με γρήγορους ρυθμούς, αναλαμβάνοντας πολλές από τις προσπάθειές μας, αυξάνονται και οι κίνδυνοι να υποβάλλουμε τον εαυτό μας σε μια ανεξήγητη Ιδιότητα. Διαβάστε τι σημαίνει η μοναδικότητα για εμάς.

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Οι μέθοδοι αποθήκευσης των δεδομένων εξελίσσονται μπορεί να είναι από τη γέννηση των Δεδομένων. Αυτό το ιστολόγιο καλύπτει την εξέλιξη της αποθήκευσης δεδομένων με βάση ένα infographic.

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

Διαβάστε το ιστολόγιο για να μάθετε διαφορετικά επίπεδα στην Αρχιτεκτονική Μεγάλων Δεδομένων και τις λειτουργίες τους με τον απλούστερο τρόπο.

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

Σε αυτόν τον ψηφιακό κόσμο, οι έξυπνες οικιακές συσκευές έχουν γίνει κρίσιμο μέρος της ζωής. Ακολουθούν μερικά εκπληκτικά οφέλη των έξυπνων οικιακών συσκευών σχετικά με το πώς κάνουν τη ζωή μας να αξίζει και να απλοποιείται.

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Πρόσφατα, η Apple κυκλοφόρησε το macOS Catalina 10.15.4 μια συμπληρωματική ενημέρωση για την επιδιόρθωση προβλημάτων, αλλά φαίνεται ότι η ενημέρωση προκαλεί περισσότερα προβλήματα που οδηγούν σε bricking των μηχανών mac. Διαβάστε αυτό το άρθρο για να μάθετε περισσότερα