Een op Laravel gebaseerde site installeren
De installatie wordt uitgevoerd met composer. Het domein dat als voorbeeld wordt gebruikt is example.com en de gebruiker van de site is user.
Voorbereiding
Composer installeren
Installeer composer in FASTPANEL® in de sectie "Applicaties"


Een website aanmaken
Maak een website aan in FASTPANEL® en geef de subdirectory public op in de site-instellingen in de sectie "Sitemap".

Een project aanmaken
Om een project aan te maken, moet u via SSH verbinding maken met de server met de gegevens van de site-eigenaar. De site-eigenaar wordt weergegeven in de sitekaart in FASTPANEL

Nadat de SSH-verbinding tot stand is gebracht, moet u de sitemap wissen met behulp van het volgende opdrachtvoorbeeld (geef in plaats van example.com uw sitenaam op)
rm -rf /var/www/user/data/www/example.com/*
Ga daarna naar de sitemap
cd /var/www/user/data/www/example.com
En maak een project aan
composer create-project laravel/laravel ./
Voorbeeld van uitvoer bij een correcte installatie
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.
Een specifieke versie van Laravel installeren
Om een specifieke versie te installeren, moet u bij het aanmaken van een project de versie aan het einde van de opdracht tussen aanhalingstekens opgeven
composer create-project laravel/laravel ./ "5.8.*"
Databaseverbinding
- Geef voor Artisan de gegevens voor de verbinding met de database op in het bestand .env in de sitedirectory
- Voor de site geeft u de gegevens voor verbinding met de database op in het bestand
./config/database.php
Om het bestand .env te bewerken, kunt u via SSH een teksteditor met de naam nano gebruiken:
nano .env
Voorbeeld van .env
DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=site_db
DB_USERNAME=db_user
DB_PASSWORD=0j9vd3qATwTsXW7C
Om het bestand ./config/database.php via SSH te bewerken:
nano ./config/database.php
Voorbeeld van ./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'),
]) : [],
],
In de nano-editor wordt Ctrl+O gebruikt om wijzigingen op te slaan, Ctrl+X wordt gebruikt om de editor af te sluiten.
Memcached-verbinding (optioneel)
U moet de PHP-module memcached installeren voor de PHP-versie die op de site wordt gebruikt, en ook de applicatie installeren.
De PHP-module memcached installeren


De memcached-applicatie installeren


Een configuratiebestand bewerken
Geef de gegevens voor verbinding met memcached op in het bestand ./config/cache.php
Voorbeeld van ./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,
],
],
],
Artisan gebruiken met een niet-systeemversie van PHP
Om artisan te gebruiken met een niet-systeemversie van PHP, moet u het volledige pad naar het uitvoerbare bestand opgeven. Voorbeeld van het gebruik van een alternatieve PHP-versie 8.2:
/opt/php82/bin/php artisan list
Basis Artisan-opdrachten
Opdrachten moeten worden uitgevoerd in de hoofdmap van uw project (example.com in dit voorbeeld)
cd /var/www/user/data/www/example.com
Om een lijst van alle beschikbare Artisan-opdrachten te bekijken, kunt u de opdracht gebruiken
php artisan list
Start een lokale Laravel-ontwikkelserver. U kunt de sleutels --host en --port opgeven
php artisan serve
Migratie starten
php artisan migrate
Onderhoudsmodus op de site inschakelen, sleutel --redirect=/ om de pagina voor de onderhoudsmodus op te geven
php artisan down
De onderhoudsmodus op de site uitschakelen
php artisan up