Skip to content

Deploy

För att lansera (göra en deploy! 🚀) behöver ett par saker vara fixade.

  1. Köra composer install på remote-servern.
  2. Kopiera över byggda asset (/public mappen) som byggts ihop med pnpm build.

Om du kör Bedrock behöver fler steg göras och dokumentation för det finns (här) [https://docs.roots.io/bedrock/master/deployment/#supported-deployment-tools].

För automatisering av deployflöden rekommenderas Buddy.

Serverkrav

  • WordPress >= 5.9
  • PHP 8.0
  • BCMath PHP Extension
  • Ctype PHP Extension
  • Fileinfo PHP Extension
  • JSON PHP Extension
  • Mbstring PHP Extension
  • Tokenizer PHP Extension
  • XML PHP Extension

Serverkonfiguration

Det viktigaste att tänka på är att Blade-filerna inte ligger publikt åtkomliga. Se nästa avsnitt.

Säkra Blade-filer

För att det inte ska gå att komma åt *.blade.php-filer direkt genom webbläsaren måste servern konfigureras för att blocka det.

Nginx

Lägg till detta innan location-direktivet som hanterar PHP filer.

location ~* \.(blade\.php)$ {
    deny all;
}

Apache

Lägg till detta i vhost-konfigurationen, eller i .htaccess i web-roten.

<FilesMatch ".+\.(blade\.php)$">
    # Apache 2.4
    <IfModule mod_authz_core.c>
        Require all denied
    </IfModule>

    # Apache 2.2
    <IfModule !mod_authz_core.c>
        Order deny,allow
        Deny from all
    </IfModule>
</FilesMatch>

Deploy via FTP

Om du inte har möjlighet att köra composer på remote-servern kan man behöva göra en lansering via FTP. Då kompileras assets för produktion och sedan körs composer install --no-dev lokalt. Sedan laddas alla filer förutom node_modules upp på servern.