A Sylius egy modern e-kereskedelmi platform a PHP számára, amely a Symfony Framework-re épül. Sylius forráskód tárolt GitHub .
Ez az útmutató végigvezeti a Sylius telepítési folyamatán egy friss FreeBSD 12 Vultr példányon PHP, MariaDB adatbázisként és Nginx webszerver használatával.
Követelmények
A Sylius telepítéséhez a következőkre lesz szüksége:
- Vultr szerverpéldány legalább 2048 MB memóriával.
- Nginx vagy Apache. Ebben az útmutatóban az Nginxet használjuk.
- PHP 7.2-es vagy újabb verzió néhány speciális PHP-kiterjesztéssel:
gd
, exif
, fileinfo
,intl
- PHP konfigurációs beállítások:
memory_limit
egyenlő vagy nagyobb, mint 1024M
,date.timezone
- MySQL 5.7-es vagy 8.0-s verzió vagy MariaDB megfelelője
- Zeneszerző
- Node.js
- Fonal
Mielőtt elkezded
Ellenőrizze a FreeBSD verzióját.
uname -ro # FreeBSD 12.0-RELEASE
Győződjön meg arról, hogy a FreeBSD rendszere naprakész.
freebsd-update fetch install pkg update && pkg upgrade -y
Telepítse a szükséges csomagokat.
pkg install -y sudo vim unzip curl wget bash socat git
Hozzon létre egy új felhasználói fiókot a kívánt felhasználónévvel. használni fogjuk 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!
Futtassa a visudo
parancsot, és törölje a %wheel ALL=(ALL) ALL
sor megjegyzését , hogy a wheel
csoport tagjai bármilyen parancsot végrehajthassanak.
visudo # Uncomment by removing hash (#) sign # %wheel ALL=(ALL) ALL
Most váltson az újonnan létrehozott felhasználóra a segítségével su
.
su - johndoe
MEGJEGYZÉS: Cserélje johndoe
ki a felhasználónevét.
Állítsa be az időzónát.
sudo tzsetup
PHP telepítése
Telepítse a PHP-t és a szükséges PHP-bővítményeket.
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
Ellenőrizze a verziót.
php --version # PHP 7.3.8 (cli) (built: Aug 8 2019 01:28:36) ( NTS )
Lágy hivatkozás ide php.ini-production
: php.ini
.
sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini
Engedélyezze és indítsa el a PHP-FPM-et.
sudo sysrc php_fpm_enable=yes sudo service php-fpm start
Futtassa sudo vim /usr/local/etc/php.ini
és állítsa be memory_limit
a 1024M
vagy több értéket, majd állítsa be date.timezone
.
memory_limit = 1024M date.timezone = Region/City
Indítsa újra a PHP-FPM-et.
sudo service php-fpm restart
Telepítse a MariaDB-t, és hozzon létre egy adatbázist
Telepítse a MariaDB-t.
sudo pkg install -y mariadb102-client mariadb102-server
Ellenőrizze a verziót.
mysql --version # mysql Ver 15.1 Distrib 10.2.25-MariaDB, for FreeBSD12.0 (amd64) using readline 5.1
Indítsa el és engedélyezze a MariaDB-t.
sudo sysrc mysql_enable="yes" sudo service mysql-server start
Futtassa a mysql_secure installation
szkriptet a biztonság javítása érdekében, és állítsa be a root
felhasználó jelszavát .
sudo mysql_secure_installation
Csatlakozzon a shellhez root felhasználóként.
sudo mysql -u root -p # Enter password
Hozzon létre egy üres adatbázist és felhasználót a Sylius számára, és emlékezzen a hitelesítő adatokra.
CREATE DATABASE dbname; GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password'; FLUSH PRIVILEGES; exit
MEGJEGYZÉS: Cserélje ki a dbname
és username
a beállítást megfelelő nevekkel. Cserélje password
ki erős jelszóra.
Telepítse az Nginx-et
Telepítse az Nginx-et.
sudo pkg install -y nginx
Ellenőrizze a verziót.
nginx -v # nginx version: nginx/1.16.1
Engedélyezze és indítsa el az Nginxet.
sudo sysrc nginx_enable=yes sudo service nginx start
Konfigurálja az Nginxet a Sylius számára. Futtassa sudo vim /usr/local/etc/nginx/sylius.conf
és töltse fel a fájlt a következő konfigurációval.
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; }
Mentse el a fájlt, és lépjen ki a :+ W+ gombbal Q.
Most bele kell foglalnunk sylius.conf
a nginx.conf
főfájlba.
Futtassa, sudo vim /usr/local/etc/nginx/nginx.conf
és adja hozzá a következő sort a http {}
blokkhoz.
include sylius.conf;
Tesztelje a konfigurációt.
sudo nginx -t
Töltse újra az Nginxet.
sudo service nginx restart
Telepítse a Composert
Telepítse a Composert globálisan.
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
Ellenőrizze a verziót.
composer --version # Composer version 1.9.0 2019-08-02 20:55:32
Telepítse a Node.js-t
Telepítse a Node.js-t.
sudo pkg install -y node
Ellenőrizze a verziót.
node --version # v12.4.0
Telepítse a fonalat
Telepítse a Yarn csomagkezelőt.
sudo pkg install -y yarn
Ellenőrizze a verziót.
yarn --version # 1.16.0
Telepítse a Syliust
Hozzon létre egy dokumentum gyökérkönyvtárát.
sudo mkdir -p /usr/local/www/sylius
Módosítsa a /usr/local/www/sylius
címtár tulajdonjogát erre: johndoe
.
sudo chown -R johndoe:johndoe /usr/local/www/sylius
Navigáljon a dokumentum gyökérmappájához.
cd /usr/local/www/sylius
Indítson el egy új Sylius projektet a következő parancs futtatásával:
composer create-project sylius/sylius-standard .
Futtassa vim .env.local
az adatbázis részleteinek megadásához és a Sylius futtatásához egy választott környezetben.
APP_ENV=prod DATABASE_URL=mysql://username:[email protected]/dbname
MEGJEGYZÉS: Cserélje ki a username
, password
és dbname
jelet az adatbázis adataival.
Miután minden a helyére került, futtassa a következő parancsot a Sylius telepítéséhez:
php bin/console sylius:install -e prod
A teljesen működőképes előtér megtekintéséhez telepítenie kell annak eszközeit. A Sylius a Gulp-ot használja az előtér-eszközök létrehozásához, a Yarn-t JavaScript-csomagkezelőként. A Yarn telepítése után lépjen a projektkönyvtárba a függőségek telepítéséhez.
yarn install
Ezután készítse el az előtér-eszközöket a következő futtatásával:
yarn build
Módosítsa a /usr/local/www/sylius
címtár tulajdonjogát erre: www
.
sudo chown -R www:www /usr/local/www/sylius
Hozzon létre /var/lib/php/session/
könyvtárat, és módosítsa a tulajdonost erre: www
.
sudo mkdir -p /var/lib/php/session && sudo chown -R www:www /var/lib/php/session
Indítsa újra a PHP-FPM szolgáltatást.
sudo service php-fpm restart
A Sylius e-kereskedelmi platform telepítve van. Alapértelmezés szerint az adminisztrációs panel a következőre vezet: /admin
.