Procédure
Nasazení aplikace Laravel na VPS s ISPConfig se provádí konfigurací vaší domény, webu v administračním panelu a následnou instalací projektu z příkazové řádky s vyhrazeným účtem. Laravel je open source webový framework v PHP určený k tvorbě robustních a moderních webových aplikací díky přehledné a elegantní architektuře. Tento kompletní postup vás krok za krokem provede až k zobrazení zabezpečené úvodní stránky přes HTTPS, aniž byste museli používat root oprávnění serveru.
Přejděte do sekce správy vaší domény, otevřete záložku DNS zóna a poté vytvořte novou položku. Zvolte typ A, vyplňte požadovanou subdoménu (například laravel pro laravel.learnlws.fr), zadejte IP adresu vašeho VPS serveru (např. 203.0.113.10) a klikněte na Přidat.
Ve vašem zákaznickém účtu LWS pro VPS najděte blok Správa vašeho serveru a klikněte na tlačítko Administrátorský panel pro přihlášení do ISPConfig.
V ISPConfig přejděte do menu Sites a klikněte na Add new website. Zadejte svou úplnou doménu (např. laravel.learnlws.fr), v případě potřeby vyberte alias Auto-Subdomain, povinně zaškrtněte políčka SSL a Let's Encrypt SSL, nastavte pole PHP na PHP-FPM, zvolte aktuální verzi PHP a poté klikněte na Save.
V levém menu přejděte do sekce Command Line a klikněte na SSH/SFTP-User, poté na Add new SSH-User. Vyberte svůj web, zadejte uživatelské jméno (před kterým bude automatická předpona, například defaultlaravelapp), nastavte bezpečné heslo, ponechte parametr Chroot Shell na None, aby bylo možné globální spouštění PHP nástrojů, a poté klikněte na Save.
V levém menu v sekci Databases nejprve přidejte uživatele MySQL přes Database Users a přiřaďte mu silné heslo. Poté přejděte do Databases, klikněte na Add new Database, vyberte svůj web, pojmenujte databázi a připojte právě vytvořeného uživatele MySQL, než vše potvrdíte.
Otevřete terminál a připojte se pomocí svého shell uživatele: ssh defaultlaravelapp@203.0.113.10. Ověřte, že je Composer (standardní správce závislostí pro PHP) dostupný pomocí příkazu composer -V; pokud ještě není přítomen, stáhněte jeho spustitelný soubor přímo do svého účtu. Přejděte do adresáře hostingu a inicializujte projekt příkazem composer create-project laravel/laravel . (nebo naklonujte svůj Git repozitář před spuštěním composer install).
Upravte soubor .env v kořenovém adresáři vašeho Laravel projektu pomocí editoru, jako je nano: nastavte APP_URL=https://laravel.learnlws.fr a doplňte parametry MySQL (DB_HOST=203.0.113.10, DB_DATABASE, DB_USERNAME, DB_PASSWORD). Poté spusťte generování šifrovacího klíče pomocí php artisan key:generate a následně proveďte migrace příkazem php artisan migrate pro vytvoření tabulek.
Laravel zveřejňuje svůj vstupní bod ze své podsložky public/. V ISPConfig upravte direktivu document root Apache vašeho webu tak, aby směřovala do této složky public/ (nebo propojte složku web/ s public/), a poté aplikujte nezbytná oprávnění pro zápis na složky cache a logů spuštěním chmod -R 775 storage bootstrap/cache.
Otevřete webový prohlížeč a zadejte adresu svého webu (například https://laravel.learnlws.fr). Zobrazí se výchozí úvodní stránka Laravelu se aktivním bezpečnostním zámkem SSL, což potvrzuje úspěšné dokončení instalace.
Po instalaci vaší aplikace Laravel usnadňuje několik příkazů konzole Artisan provoz a údržbu projektu.
Režim 'None' umožňuje vašemu uživateli spouštět globální binární soubory systému Debian (zejména PHP CLI, Git a Composer). Běžné chrootované prostředí omezuje přístupy a blokovalo by normální spouštění příkazů Artisan a Composer.
Chyba HTTP 500 obvykle vzniká kvůli chybějícímu aplikačnímu klíči v souboru .env (spusťte php artisan key:generate) nebo nedostatečným oprávněním ke složkám storage a bootstrap/cache, které musí být pro webový server zapisovatelné.
Do možností webu v ISPConfig můžete vložit vlastní Apache direktivu pro předefinování DocumentRoot na /var/www/votresite.com/web/public, nebo nahradit standardní složku web symbolickým odkazem směřujícím do složky public vašeho projektu.
Ne, veškeré operace správy souborů, instalace závislostí Composeru, konfigurace .env i příkazy Artisan se provádějí kompletně pomocí shell uživatele přiřazeného k webu vytvořenému v ISPConfig.
Ujistěte se, že DNS záznam typu A skutečně směřuje na IP adresu vašeho VPS a že propagace již skončila. Let's Encrypt před potvrzením a vystavením certifikátu kontroluje dostupnost domény zvenčí.
Položte ji týmu LWS a komunitě. Odpověď bude zveřejněna po kontrole moderátorem.