# Come faccio il deploy del mio progetto Laravel?

https://www.seturack.com/it/base-di-conoscenza/articolo/how-do-i-deploy-my-laravel-project

1. Nel pannello apri **I miei server** e clicca sul tuo server.
2. Nella scheda **Panoramica** aspetta che la riga **App** dica "Laravel è pronto". La pagina si aggiorna da sola.
3. Apri il link nella riga **Indirizzo del sito**. Vedi la pagina di benvenuto di Laravel.

## Portare il tuo codice

[Connettiti via SSH](https://www.seturack.com/it/base-di-conoscenza/articolo/how-to-connect-with-ssh) e passa all'utente del progetto:

`su - app`

`cd /var/www/laravel`

Il progetto si trova qui. Dopo aver copiato il tuo codice, esegui:

`composer install --no-dev`

`php artisan migrate --force`

`php artisan config:cache`

Il file `.env` è già pronto, quindi non sovrascriverlo. Il nome del database e l'utente sono entrambi `laravel`, la password è nel pannello.

## Cosa trovi già pronto

- Il queue worker è il servizio `laravel-kuyruk`. Quando cambi il codice, esegui `systemctl restart laravel-kuyruk`.
- Lo scheduler parte ogni minuto (`/etc/cron.d/laravel`).

## Il tuo dominio

1. Punta il record A del tuo dominio all'indirizzo IP del tuo server.
2. Come root, sostituisci il vecchio nome ovunque: `sed -i 's/OLD_NAME/yourdomain.com/g' /etc/caddy/Caddyfile`. `OLD_NAME` è la parte dopo `https://` nell'indirizzo mostrato nel pannello.
3. Esegui `systemctl reload caddy`.

Caddy ottiene e rinnova il certificato da solo.

Aggiorna anche `APP_URL` nel file `.env`. Dall'esterno sono aperte solo le porte **80**, **443** e **22** per SSH.

**Non hai ancora un server?** [Ordina un server con Laravel già installato](https://www.seturack.com/it/laravel-vps): scegli la dimensione e paghi solo ciò che scegli.
