Hopp til hovedinnhold

Slik installerer du et Laravel-basert nettsted

Installasjonen utføres med composer. Domenet som brukes som eksempel er example.com, og brukeren av nettstedet er user.

Forberedelse

Installere Composer

Installer composer i FASTPANEL® i delen "Applications"

Programadministrasjonsmeny i FASTPANEL

Installering av composer i FASTPANEL

Opprette et nettsted

Opprett et nettsted i FASTPANEL® og angi underkatalogen public i nettstedinnstillingene i delen "Site Directory".

Angi underkatalogen public

Opprette et prosjekt

For å opprette et prosjekt må du koble til serveren via SSH med opplysningene til nettstedseieren. Nettstedseieren vises på nettstedkortet i FASTPANEL

Kontrollere nettstedseieren i FASTPANEL

Etter at SSH-tilkoblingen er opprettet, bør du tømme nettstedkatalogen ved å bruke følgende kommandoeksempel (angi navnet på nettstedet ditt i stedet for example.com)”

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

Gå deretter til nettstedkatalogen

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

Og opprett et prosjekt

composer create-project laravel/laravel ./
Eksempel på utdata ved korrekt installasjon
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.

Installere en bestemt versjon av Laravel

For å installere en bestemt versjon må du, når du oppretter et prosjekt, angi versjonen på slutten av kommandoen i anførselstegn

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

Databasetilkobling

  • For artisan angir du dataene for å koble til databasen i filen.env i nettstedkatalogen
  • For nettstedet angir du dataene for å koble til databasen i filen ./config/database.php

For å redigere .env-filen kan du bruke tekstredigereren nano via SSH:

nano .env
Eksempel på .env
DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=site_db
DB_USERNAME=db_user
DB_PASSWORD=0j9vd3qATwTsXW7C

For å redigere filen ./config/database.php via SSH:

nano ./config/database.php
Eksempel på ./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'),
]) : [],
],

I nano-redigereren brukes Ctrl+O til å lagre endringer, og Ctrl+X brukes til å avslutte redigereren.

Memcached-tilkobling (valgfritt)

Du må installere PHP-modulen memcached for PHP-versjonen som brukes på nettstedet, samt installere programmet.

Installere PHP-modulen memcached

PHP-administrasjonsmeny i FASTPANEL

Installer PHP-modulen memcached i FASTPANEL

Installere programmet memcached

Programadministrasjonsmeny i FASTPANEL

Installer programmet memcached i FASTPANEL

Redigere en konfigurasjonsfil

Angi dataene for å koble til memcached i filen ./config/cache.php

Eksempel på ./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,
],
],
],

Bruke Artisan på en ikke-systemversjon av PHP

For å bruke artisan på en ikke-systemversjon av PHP må du angi hele banen til den kjørbare filen. Eksempel på bruk av en alternativ PHP-versjon 8.2:

/opt/php82/bin/php artisan list

Grunnleggende Artisan-kommandoer

Kommandoer bør kjøres i rotkatalogen til prosjektet ditt (example.com i dette eksemplet)

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

For å se en liste over alle tilgjengelige Artisan-kommandoer kan du bruke kommandoen

php artisan list

Start en lokal Laravel-utviklingsserver. Du kan angi nøklene --host og --port

php artisan serve

Start migrering

php artisan migrate

Aktivere vedlikeholdsmodus på nettstedet, nøkkel --redirect=/ for å angi siden for vedlikeholdsmodus

php artisan down

Slå av vedlikeholdsmodus på nettstedet

php artisan up