Preskoči na glavni sadržaj

Kako instalirati sajt zasnovan na Laravel-u

Instalacija se obavlja pomoću composer-a. Domen korišćen kao primer je example.com, a korisnik sajta je user.

Priprema

Instalacija Composer-a

Instalirajte composer u FASTPANEL® u odeljku "Applications"

Meni za upravljanje aplikacijama u FASTPANEL-u

Instalacija composer-a u FASTPANEL-u

Kreiranje veb-sajta

Kreirajte veb-sajt u FASTPANEL® i navedite poddirektorijum public u podešavanjima sajta, u odeljku "Site Directory".

Navođenje poddirektorijuma public

Kreiranje projekta

Da biste kreirali projekat, potrebno je da se povežete na server putem SSH-a koristeći podatke vlasnika sajta. Vlasnik sajta je prikazan na kartici sajta u FASTPANEL-u

Provera vlasnika sajta u FASTPANEL-u

Nakon uspostavljanja SSH veze, potrebno je da obrišete direktorijum sajta koristeći sledeći primer komande (umesto example.com navedite naziv svog sajta)

rm -rf /var/www/user/data/www/example.com/*

Zatim pređite u direktorijum sajta

cd /var/www/user/data/www/example.com

I kreirajte projekat

composer create-project laravel/laravel ./
Primer izlaza u slučaju uspešne instalacije
73 package suggestions were added by new dependencies, use `composer suggest` to see details.
Package fruitcake/laravel-cors is abandoned, you should avoid using it. No replacement was suggested.
Package swiftmailer/swiftmailer is abandoned, you should avoid using it. Use symfony/mailer instead.
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi
Discovered Package: facade/ignition
Discovered Package: fruitcake/laravel-cors
Discovered Package: laravel/sail
Discovered Package: laravel/sanctum
Discovered Package: laravel/tinker
Discovered Package: nesbot/carbon
Discovered Package: nunomaduro/collision
Package manifest generated successfully.
76 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
> @php artisan vendor:publish --tag=laravel-assets --ansi --force
No publishable resources for tag [laravel-assets].
Publishing complete.
No security vulnerability advisories found
> @php artisan key:generate --ansi
Application key set successfully.

Instalacija određene verzije Laravel-a

Da biste instalirali određenu verziju, prilikom kreiranja projekta morate navesti verziju na kraju komande pod navodnicima

composer create-project laravel/laravel ./ "5.8.*"

Povezivanje sa bazom podataka

  • Za Artisan navedite podatke za povezivanje sa bazom podataka u datoteci .env u direktorijumu sajta
  • Za sajt navedite podatke za povezivanje sa bazom podataka u datoteci ./config/database.php

Da biste uredili .env datoteku, putem SSH-a možete koristiti uređivač teksta pod nazivom nano:

nano .env
Primer .env datoteke
DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=site_db
DB_USERNAME=db_user
DB_PASSWORD=0j9vd3qATwTsXW7C

Da biste uredili datoteku ./config/database.php putem SSH-a:

nano ./config/database.php
Primer ./config/database.php
    'mysql' => [
'driver' => 'mysql',
'url' => env('DATABASE_URL'),
'host' => env('DB_HOST', 'localhost'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'site_db'),
'username' => env('DB_USERNAME', 'db_user'),
'password' => env('DB_PASSWORD', '0j9vd3qATwTsXW7C'),
'unix_socket' => env('DB_SOCKET', ''),
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',
'prefix' => '',
'prefix_indexes' => true,
'strict' => true,
'engine' => null,
'options' => extension_loaded('pdo_mysql') ? array_filter([
PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
]) : [],
],

U nano uređivaču, Ctrl+O se koristi za čuvanje izmena, a Ctrl+X za izlazak iz uređivača.

Povezivanje sa Memcached-om (opciono)

Potrebno je da instalirate PHP modul memcached za PHP verziju koja se koristi na sajtu, kao i da instalirate aplikaciju.

Instalacija memcached PHP modula

Meni za upravljanje PHP-om u FASTPANEL-u

Instalacija PHP memcached modula u FASTPANEL-u

Instalacija memcached aplikacije

Meni za upravljanje aplikacijama u FASTPANEL-u

Instalirajte memcached aplikaciju u FASTPANEL-u

Uređivanje konfiguracione datoteke

Navedite podatke za povezivanje sa memcached-om u datoteci ./config/cache.php

Primer ./config/cache.php
'memcached' => [
'driver' => 'memcached',
'persistent_id' => env('MEMCACHED_PERSISTENT_ID'),
'sasl' => [
env('MEMCACHED_USERNAME'),
env('MEMCACHED_PASSWORD'),
],
'options' => [
// Memcached::OPT_CONNECT_TIMEOUT => 2000,
],
'servers' => [
[
'host' => env('MEMCACHED_HOST', '127.0.0.1'),
'port' => env('MEMCACHED_PORT', 11211),
'weight' => 100,
],
],
],

Korišćenje Artisan-a sa nesistemskom verzijom PHP-a

Da biste koristili artisan sa nesistemskom verzijom PHP-a, morate navesti punu putanju do izvršne datoteke. Primer korišćenja alternativne PHP verzije 8.2:

/opt/php82/bin/php artisan list

Osnovne Artisan komande

Komande treba izvršavati u korenskom direktorijumu vašeg projekta (u ovom primeru example.com)

cd /var/www/user/data/www/example.com

Da biste prikazali listu svih dostupnih Artisan komandi, možete koristiti komandu

php artisan list

Pokrenite lokalni Laravel razvojni server. Možete navesti ključeve --host i --port

php artisan serve

Pokrenite migraciju

php artisan migrate

Uključivanje režima održavanja na sajtu, ključ --redirect=/ za navođenje stranice za režim održavanja

php artisan down

Isključivanje režima održavanja na sajtu

php artisan up