Si presume che, sia in locale che su uno spazio hosting Linux con accesso SSH, siano installati i pacchetti Node.js - Npm - Bower - PHP - Composer.
Installazione Newportal su una macchina locale di sviluppo
# importare il progetto da github repository
# posizionarsi nella document root ex cd /c/www
git clone https://github.com/lscavelli/newportal.git
# in alternativa a "git clone" è possibile scaricare l'app dal seguente indirizzo
# https://github.com/lscavelli/newportal/archive/master.zip
# installare le dipendenze di Back end
cd newportal
composer install
# copiare il file di environment
cp .env.example .env
# generare la chiave del portale
php artisan key:generate
# impostare l'accesso al DB all'interno del file .env
# effettuare la generazione delle tabelle nel DB
# attendere qualche minuto, le tabelle Cities e Countries contengono molti dati
php artisan migrate --seed
# rendere scrivibile le seguenti dir
chmod -R g+w storage
chmod -R g+w bootstrap/cache
# creare un collegamento simbolico allo storage dell'app
php artisan storage:link
# Avvio il server web
php artisan serve // http://127.0.0.1:8000
# modificare il file hosts da /etc/hosts (linux)
# C:\Windows\System32\drivers\etc\hosts (windows), inserendo:
127.0.0.1 newportal.test
# installare le dipendenze di front end
cd public
npm install
# credenziali per login - http://newportal.test:8000/login
username: admin@example.com
password: admin
Installazione Newportal su spazio hosting Linux con accesso SSH
# nomesito.io (Domain name)
# httpdocs (Document root)
# verificare che la dir httpdocs sia vuota, dopodiché eliminarla
rm -rf httpdocs
# se già esiste la dir newportal rimuoverla con rm -rf newportal
# importare il progetto laravel fuori dalla document root
git clone https://github.com/lscavelli/newportal.git
# in alternativa a "git clone" è possibile scaricare l'app dal seguente indirizzo
# https://github.com/lscavelli/newportal/archive/master.zip
# creare un link simbolico alla dir public
# dopo la creazione del link verificare la funzionalità, entrando nella cartella - cd httpdocs
ln -s newportal/public httpdocs
# installare le dipendenze di Back end
cd newportal
composer install
# copiare il file di environment
cp .env.example .env
# generare la chiave del portale
php artisan key:generate
# eliminare la linea APP_ENV dal file .env (questo verrà impostato su production)
# eliminare la linea APP_DEBUG dal file .env (questo verrà impostato su false)
# impostare nel file .env la variabile SESSION_DRIVER su database
# impostare i dati di accesso al DB nel file .env
# effettuare la generazione delle tabelle nel DB
# Attendere qualche minuto. Le tabelle Cities e Countries contengono molti dati
php artisan migrate --seed
# verificare che i permessi per le cartelle e i file siano impostati correttamente
#cd /var/www
#chown -R <utente-ftp>:<apache> newportal
#find newportal -type f -exec chmod 644 {} \;
#find newportal -type d -exec chmod 755 {} \;
# abilitare la scrittura per alcune dir
chmod -R g+w storage
chmod -R g+w bootstrap/cache
# creare un collegamento simbolico allo storage dell'app
php artisan storage:link
# ottimizzare l'autoloader e metto in cache alcuni file
composer dumpautoload -o // oppure con composer dump-autoload --optimize --no-dev
php artisan config:cache
php artisan route:cache
# una volta che si esegue il comando config:cache.
# due nuovi file saranno creati in bootstrap/cache.
# Questi sono config.php e services.php
# Rieseguire il comando se si cambiano i percorsi e le configurazioni
# Con il comando route:cache viene creato nella cache un terzo file, route.php.
# Installo le dipendenze di front end
cd httpdocs
npm install
# credenziali per login - http://<domain-name>/login
username: admin@example.com
password: admin