laravel
Yleiskatsaus
Laravel on PHP-verkkosovelluskehys ilmeikkäällä, elegantilla syntaksilla. Tämä opas opastaa sinut Laravel-sovelluksen käyttöönotossa NStrim-alustalla alusta loppuun.
Pikaopas
Luo repositorio mallista
Siirry kojelaudallasi Tools & Deployment -välilehteen. Napsauta "New Repository" -painiketta, valitse Laravel-malli pudotusvalikosta, anna arkiston nimi ja alidomain ja napsauta "Create Repository".
Kloonaa repositoriosi
git clone https://<git-server>/<username>/<repo-name>.git
cd <repo-name>
Asenna riippuvuudet
composer install
Määritä ympäristö
Kopioi esimerkkiympäristötiedosto ja määritä tietokanta (katso yksityiskohtaiset ohjeet alla):
cp .env.example .env
php artisan key:generate
Suorita migraatiot ja lähetä
php artisan migrate
git add .
git commit -m "Initial setup"
git push origin main
Paikallinen kehitys Dockerilla
Jos sinulla ei ole PHP:tä asennettuna paikallisesti, voit käyttää Dockeria Laravel-komentojen suorittamiseen. Projekti sisältää Dockerfilen, joka määrittää kaiken tarvittavan.
Edellytykset
Asenna Docker Desktop käyttöjärjestelmällesi (Windows, Mac tai Linux).
Komentojen suorittaminen Dockerilla
Sen sijaan, että suorittaisit php artisan migrate suoraan, suoritat sen Docker-kontissa:
# Rakenna Docker-kuva (tarvitaan vain kerran)
docker build -t laravel-app .
# Suorita mikä tahansa artisan-komento
docker run --rm laravel-app php artisan migrate
# Suorita composer install
docker run --rm -v $(pwd):/var/www/html laravel-app composer install
# Interaktiivinen shell kontissa
docker run --rm -it -v $(pwd):/var/www/html laravel-app bash
Tietokannan määritys
NStrim-alusta tarjoaa sinulle MySQL/MariaDB-tietokannan. Sinun täytyy määrittää .env-tiedostosi oikeilla tietokantatunnuksilla yhteyden muodostamiseksi.
Miksi määrittää tietokanta?
Laravel käyttää .env-tiedostoa ympäristökohtaisen konfiguraation tallentamiseen. Oletuksena malli käyttää SQLite:a (tiedostopohjainen tietokanta), mutta NStrim tarjoaa MySQL:n parempaan suorituskykyyn ja yhteensopivuuteen todellisten käyttötapausten kanssa.
Vaiheittainen määritys
Avaa .env-tiedostosi
Avaa .env-tiedosto projektisi juuressa koodieditorillasi.
Etsi tietokantaosio
Etsi nämä rivit (yleensä rivin 23 kohdalla):
DB_CONNECTION=sqlite
# DB_HOST=127.0.0.1
# DB_PORT=3306
# DB_DATABASE=laravel
# DB_USERNAME=root
# DB_PASSWORD=
Päivitä tunnistetiedoillasi
Korvaa hallintapaneelin tunnistetiedoilla:
DB_CONNECTION=mysql
DB_HOST=db.<session-domain>
DB_PORT=3306
DB_DATABASE=<your-username>
DB_USERNAME=<your-username>
DB_PASSWORD=<your-password>
student01). Tarkista hallintapaneelin tunnistetiedot tarkoille arvoille.Määritysesimerkki
Jos käyttäjänimesi on student01 ja istunnon domain on demo.nstrim.app:
DB_CONNECTION=mysql
DB_HOST=db.demo.nstrim.app
DB_PORT=3306
DB_DATABASE=student01
DB_USERNAME=student01
DB_PASSWORD=your-password-from-dashboard
Migraatioiden suorittaminen
Migraatiot ovat Laravelin tapa luoda tietokantatauluja. Tietokannan määrittämisen jälkeen suorita migraatiot tarvittavien taulujen luomiseksi:
php artisan migrate
Jos sinun täytyy nollata ja suorittaa kaikki migraatiot uudelleen (tämä poistaa kaiken datan):
php artisan migrate:fresh
Migraatioiden suorittamiseen seed-datalla (jos projektissasi on seedereitä):
php artisan migrate:fresh --seed
Projektirakenne
Tiedostojen sijainnin ymmärtäminen:
├── app/ # Sovelluskoodi
│ ├── Http/
│ │ └── Controllers/ # Kontrollerisi sijaitsevat täällä
│ └── Models/ # Eloquent-mallit
├── config/ # Konfiguraatiotiedostot
├── database/
│ ├── migrations/ # Tietokantamigraatiot
│ └── seeders/ # Tietokantaseederit
├── public/ # Julkiset resurssit (CSS, JS, kuvat)
├── resources/
│ └── views/ # Blade-mallit
├── routes/
│ └── web.php # Web-reitit (URL → Kontrolleri)
├── .env # Ympäristökonfiguraatio (DB jne.)
└── composer.json # PHP-riippuvuudet
Hyödyllisiä komentoja
php artisan serve
Käynnistä paikallinen kehityspalvelin
php artisan migrate
Suorita tietokantamigraatiot
php artisan migrate:status
Tarkista migraatioiden tila
php artisan make:controller
Luo uusi kontrolleri
php artisan make:model -m
Luo malli migraation kanssa
php artisan route:list
Listaa kaikki rekisteröidyt reitit
Vianetsintä
SQLSTATE[HY000] [2002] Connection refused
Syy: Tietokantapalvelin on virheellinen tai tietokantapalvelin ei ole saavutettavissa.
Ratkaisu: Tarkista, että DB_HOST .env-tiedostossasi vastaa hallintapaneelin tietokantapalvelinta (yleensä db.<session-domain>).
SQLSTATE[HY000] [1045] Access denied for user
Syy: Väärä käyttäjänimi tai salasana.
Ratkaisu: Tarkista, että DB_USERNAME ja DB_PASSWORD vastaavat täsmälleen hallintapaneelissa näkyviä tietoja. Salasanat ovat kirjainkoosta riippuvaisia!
SQLSTATE[HY000] [1049] Unknown database
Syy: Tietokantanimi ei ole olemassa.
Ratkaisu: Varmista, että DB_DATABASE on asetettu käyttäjänimeesi (esim. student01). Tietokantasi on luotu ennalta samalla nimellä kuin käyttäjänimesi.
No application encryption key has been specified
Syy: APP_KEY puuttuu .env-tiedostosta.
Ratkaisu: Suorita php artisan key:generate luodaksesi uuden avaimen.
500 Server Error käyttöönoton jälkeen
Syy: Yleensä konfiguraatio-ongelma tai puuttuvat riippuvuudet.
Ratkaisu: Tarkista:
.env-tiedosto on olemassa ja siinä on oikeat arvot- APP_KEY on asetettu (suorita
php artisan key:generate) - Kaikki riippuvuudet on asennettu (
composer install) - Tietokantatunnukset ovat oikein
Käyttöönotto-työnkulku
Joka kerta kun lähetät koodia Gitiin, sovelluksesi otetaan automaattisesti käyttöön:
Käyttöönotetun sovelluksesi URL noudattaa tätä muotoa:
https://<your-subdomain>-<repo-name>.<session-domain>
Esimerkki: https://student01-module-a.demo.nstrim.app