Det här är ett exempel på hur du konfigurerar en Laravel-applikation som ska distribueras på Kinsta’s tjänster för applikationshosting från ett GitHub-kodförråd.

Laravel är en vanlig PHP-baserad applikation, så under distribueringsprocessen installerar Kinsta automatiskt beroenden som definieras i din composer.json-fil.

  1. Logga in på GitHub och skapa ett nytt arkiv från den här mallen (Använd den här mallen > Skapa ett nytt arkiv): Kinsta – Hello World – Laravel.
  2. Laravel kräver att miljövariabeln APP_KEY är inställd. Du kan generera en app-nyckel själv lokalt, eller så kan du använda den här Laravel-nyckelgeneratorn på nätet.
  3. I MyKinsta så lägger du till en applikation med Hello World Laravel-arkivet. I Miljövariabler, Nyckel 1, skriver du in APP_KEY, och i Värde 1, klistrar du in nyckeln som genererades i steg 2, väljer Tillgänglig under körtid och Tillgänglig under byggprocessen.
  4. Start-kommandot kan lämnas tomt för webb-processen eftersom Kinsta upptäcker det nödvändiga kommandot automatiskt under den första distribueringen.
    Obs: Den första distribueringen kan misslyckas eftersom du behöver lägga till nödvändiga buildpacks.
  5. För att applikationen ska kunna bygga CSS/JS-filerna måste du lägga till två buildpacks: Node.js och PHP. Klicka på Inställningar > Lägg till buildpack, välj Node.js > Lägg till buildpack. Upprepa detta för PHP.
    Det buildpack som innehåller det primära språket för din applikation måste vara det sista i buildpack-listan. I det här exemplet är PHP det primära språket och bör vara sist buildpack i listan.
  6. Klicka på Distribueringar > Distribuera nu > välj önskad gren > Distribuera applikation.

Appen är tillgänglig så snart som byggnationen är klar, och Kinsta’s välkomstsida laddas på din applikations webbadress.

Kinsta’s Välkomstsida efter framgångsrik distribuering av Laravel.
Kinsta’s Välkomstsida efter framgångsrik distribuering av Laravel.

Föredrar du att se videoversionen?

Anslut en databas

Om du vill koppla din applikation till en databas, börja med att skapa en databas i samma datacenter som din applikation befinner sig i.

  1. Lägg till en databas.
  2. Anslut databasen till applikationen genom att lägga till en intern anslutning och markera kryssrutan Lägg till miljövariabler…. Detta kommer att fylla i miljövariablerna från databasen automatiskt.
  3. Vissa av variabelnamnen (nycklarna) som Laravel använder skiljer sig från de som skapas automatiskt i MyKinsta. Redigera variabel-nycklarna efter behov för att matcha variabelnamnen som definieras i Laravels database.php-fil. Nedan finns motsvarande variabelnamn (nycklar) för de databas-typer som Laravel stöder.

Miljövariabler

MySQL och PostgreSQL

Automatiskt genererad nyckel Laravel nyckel
DB_HOST DB_HOST
DB_PORT DB_PORT
DB_NAME DB_DATABASE
DB_USER DB_USERNAME
DB_PASSWORD DB_PASSWORD
DB_CONNECTION_URL DB_URL


Redis

Automatiskt genererad nyckel Laravel nyckel
DB_HOST REDIS_HOST
DB_PORT REDIS_PORT
DB_NAME REDIS_DB
DB_USER REDIS_USERNAME
DB_PASSWORD REDIS_PASSWORD
DB_CONNECTION_URL REDIS_URL

Laravel APP_KEY

Laravel kräver att miljövariabeln APP_KEY är inställd. Om den här nyckeln inte är inställd så kommer du att se en 500-felsida från Laravel. Du kan generera en app-nyckel själv lokalt, eller så kan du använda Laravel-nyckelgeneratorn på nätet. När du har en nyckel så kan du lägga till den som en miljövariabel.

Buildpacks

I de flesta fall vill du att applikationen ska bygga CSS/JS-filerna, så du måste lägga till dessa två buildpacks:

  • Node.js
  • PHP

Det buildpack som innehåller det primära språket för din applikation måste vara det sista i buildpack-listan. I det här exemplet är PHP det primära språket och bör vara sist buildpack i listan.

Inställning av webbserver

Start-kommando

Standardwebbprocessen är heroku-php-apache2. Det här exemplet innehåller en .htaccess-fil som omdirigerar alla förfrågningar till public/index.php för Laravel. Vid behov så kan du ändra det här kommandot när du lägger till applikationen (Konfigurera dina processer) eller på applikationens sida Processer efter distribueringen. Du kan använda:

  • heroku-php-apache2 /public
  • php artisan serve --host 0.0.0.0 --port 8080