Installazione software · 7 min read · Nov 22, 2025

Come installare SolidInvoice su Ubuntu 22.04

SolidInvoice è una soluzione di fatturazione gratuita, semplice ed elegante basata su PHP. È progettata per le piccole imprese per gestire le loro operazioni di fatturazione quotidiane. SolidInvoice fornisce un’API RESTful per l’integrazione e offre vari canali di notifica come messaggi di testo, email o HipChat.

Questa guida ti mostrerà come installare SolidInvoice su un server Ubuntu 22.04. Configurerai SolidInvoice con il LAMP Stack e proteggerai l’installazione con Certbot e letsencrypt.

Requisiti

Prima di iniziare, assicurati di avere:

  • Un server Ubuntu 22.04.
  • Un utente non root con privilegi sudo.
  • Un nome di dominio puntato a un indirizzo IP del server.

Installazione delle dipendenze

SolidInvoice è un’applicazione di fatturazione open-source scritta in PHP e MySQL. Per installarlo, devi installare il LAMP Stack sul tuo sistema Ubuntu. In questo primo passaggio, installerai il LAMP Stack dal repository predefinito di Ubuntu.

Aggiorna l’indice dei pacchetti di Ubuntu con il comando qui sotto.

sudo apt update

Ora installa le dipendenze del LAMP Stack (Linux, Apache, MySQL/MariaDB e PHP) utilizzando il seguente comando. In questo esempio, utilizzerai PHP 8.x predefinito per l’installazione di SolidInvoice.

sudo apt install apache2 mariadb-server mariadb-client php php-curl php-common php-mbstring php-json php-mysql php-opcache php-bcmath php-intl php-gd php-xml php-soap php-zip php-apcu

Digita Y per confermare l’installazione.

install deps

Dopo che l’installazione è terminata, esegui il seguente comando per controllare lo stato dei servizi Apache e MariaDB per assicurarti che entrambi i servizi siano in esecuzione.

sudo systemctl status apache2  
sudo systemctl status mysql

Se Apache o MariaDB sono in esecuzione, vedrai un output active(running).

check apache

Infine, controlla la versione di PHP con il comando qui sotto. Dovresti vedere PHP 8.x installato sul tuo sistema Ubuntu.

php -v

Configurazione del server MariaDB

Dopo aver installato il LAMP Stack, devi configurare l’installazione del tuo server MariaDB. Prima, proteggerai il server MariaDB, poi creerai un nuovo database e un utente che SolidInvoice utilizzerà.

Per proteggere l’installazione del server MariaDB, inserisci quanto segue:

sudo mariadb-secure-installation

Durante il processo, inserisci Y per confermare le modifiche a MariaDB, o N per rifiutarle. Di seguito sono riportate le configurazioni del server MariaDB a cui verrai invitato:

  • L’installazione predefinita di MariaDB viene fornita senza password, premi INVIO quando ti viene chiesta la password.
  • Ora inserisci Y per impostare la password di root di MariaDB. Quindi, digita la nuova password per MariaDB e ripeti la password.
  • Inserisci Y per rimuovere l’utente anonimo dalla tua installazione di MariaDB.
  • Inserisci Y di nuovo quando ti viene chiesto di disabilitare il login remoto per l’utente root di MariaDB.
  • Inserisci Y per rimuovere il database di test predefinito dalla tua MariaDB.
  • Infine, inserisci Y per ricaricare i privilegi delle tabelle e applicare le nuove modifiche.

Ora che hai protetto MariaDB, inserisci quanto segue per accedere a MariaDB come utente root predefinito. Inserisci la tua password di root di MariaDB quando richiesto.

sudo mariadb -u root -p

Una volta effettuato l’accesso, esegui le seguenti query per creare un nuovo database solidinvoicedb, un utente solidinvoice, con la password p4ssword. Assicurati di cambiare i dettagli con le tue informazioni, questi dettagli del database saranno utilizzati da SolidInvoice.

CREATE DATABASE solidinvoicedb;  
CREATE USER solidinvoice@localhost IDENTIFIED BY 'p4ssword';  
GRANT ALL PRIVILEGES ON solidinvoicedb.* TO solidinvoice@localhost;  
FLUSH PRIVILEGES;

create datbase and user

Ora esegui la query qui sotto per controllare i privilegi per l’utente solidinvoice. Assicurati che l’utente solidinvoice possa accedere al database solidinvoicedb.

SHOW GRANTS FOR solidinvoice@localhost;

Infine, digita quit per uscire dal server MariaDB.

check db

Configurazione di PHP

Con il server MariaDB protetto e configurato, configurerai la tua installazione di PHP. In questo caso, devi modificare il file di configurazione PHP predefinito php.ini.

Apri il file di configurazione PHP predefinito /etc/php/8.1/apache2/php.ini utilizzando l’editor nano.

sudo nano /etc/php/8.1/apache2/php.ini

Cambia le configurazioni PHP predefinite con le seguenti, e assicurati di regolare memory_limit e date.timezone con l’ambiente del tuo server.

date.timezone = Europe/Amsterdam  
memory_limit=512M  
upload_max_filesize=64M  
post_max_size=120M  
max_execution_time=120

Salva il file e esci.

Ora riavvia il servizio Apache per applicare la tua modifica a PHP con il seguente comando.

sudo systemctl restart apache2

Download di SolidInvoice

Ora che hai configurato MariaDB e PHP, puoi scaricare il codice sorgente di SolidInvoice e impostare l’installazione con i permessi e la proprietà corretti.

Vai alla directory /var/www e scarica il codice sorgente di SolidInvoice utilizzando wget. Controlla la pagina di rilascio di SolidInvoice per ottenere l’ultima versione.

cd /var/www/  
wget https://github.com/SolidInvoice/SolidInvoice/releases/download/2.2.5/SolidInvoice-2.2.5.zip

Estrai il codice sorgente di SolidInvoice nella directory solidinvoice e cambia la proprietà all’utente www-data. Quindi la directory DocumentRoot o Web-root per l’installazione di SolidInvoice sarà /var/www/solidinvoice.

unzip SolidInvoice-2.2.5.zip -d solidinvoice  
sudo chown -R www-data:www-data /var/www/solidinvoice

Ora esegui il comando qui sotto per assicurarti che l’utente www-data possa scrivere in alcune delle directory e dei file di SolidInvoice.

sudo chmod u+rw /var/www/solidinvoice/app/cache  
sudo chmod u+rw /var/www/solidinvoice/app/logs  
sudo chmod u+rw /var/www/solidinvoice/var/cache  
sudo chmod u+rw /var/www/solidinvoice/var/logs
sudo chmod u+rw /var/www/solidinvoice/web/upload  
sudo chmod u+rw /var/www/solidinvoice/app/config/parameters.yml

Configurazione dell’host virtuale Apache

Dopo aver configurato la directory DocumentRoot per SolidInvoice, devi creare un nuovo host virtuale Apache che sarà utilizzato per eseguire l’installazione. Assicurati di aver preparato il tuo nome di dominio per SolidInvoice.

Per prima cosa, esegui il comando qui sotto per abilitare il modulo rewrite in Apache.

sudo a2enmod rewrite

Crea una nuova configurazione dell’host virtuale Apache /etc/apache2/sites-available/solidinvoice.conf utilizzando il comando dell’editor nano qui sotto.

sudo nano /etc/apache2/sites-available/solidinvoice.conf

Inserisci la seguente configurazione e assicurati di cambiare l’opzione ServerName con il tuo dominio target.

  
 ServerName invoice.howtoforge.local  
 ServerAlias www.invoice.howtoforge.local  
  
 DocumentRoot /var/www/solidinvoice/public  
   
 # abilita le riscritture .htaccess  
 AllowOverride All  
 Order allow,deny  
 Allow from All  
   
  
 ErrorLog /var/log/apache2/solidinvoice.error.log  
 CustomLog /var/log/apache2/solidinvoice.access.log combined  

Salva il file e esci dall’editor.

Ora inserisci il seguente comando per attivare il file dell’host virtuale solidinvoice.conf e controlla la sintassi di Apache. Se hai una sintassi corretta, vedrai un output ‘Syntax OK‘.

sudo a2ensite solidinvoice.conf  
sudo apachectl configtest

Infine, inserisci il comando qui sotto per riavviare Apache e applicare il nuovo file dell’host virtuale solidinvoice.conf. Una volta eseguito, il tuo SolidInvoice dovrebbe essere in esecuzione.

sudo systemctl restart apache2

setup apache

Proteggere SolidInvoice con HTTPS

In questo esempio, proteggerai SolidInvoice con certificati SSl/TLS tramite Certbot e letsencrypt. Ora installerai Certbot e genererai certificati SSL/TLS per il tuo nome di dominio SolidInvoice.

Per prima cosa, installa Certbot e il plugin Certbot Apache con il seguente comando. Inserisci Y per confermare l’installazione.

sudo apt install certbot python3-certbot-apache

Una volta completata l’installazione, genera certificati SSL/TLS utilizzando il seguente comando certbot. Assicurati di cambiare le informazioni del nome di dominio e dell’indirizzo email con i tuoi dettagli.

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d howtoforge.local

Dopo che il processo è terminato, i tuoi certificati SSL/TLS dovrebbero essere disponibili nella directory /etc/letsencrypt/live/domain.com. Inoltre, la tua installazione di SolidInvoice dovrebbe essere protetta automaticamente con HTTPS.

Installazione di SolidInvoice

Apri il tuo browser web e visita il tuo nome di dominio come https://invoice.howtoforge.local/. Nella Verifica dei requisiti di sistema, assicurati che tutto sia OK, quindi fai clic su Avanti per confermare.

requirements

Seleziona il driver del database su MySQL e inserisci i dettagli del tuo database MariaDB e dell’utente per SolidInvoice. Una volta fatto, fai clic su Avanti di nuovo.

db configuration

Ora puoi vedere che lo schema del database per SolidInvoice è stato creato, fai clic su Avanti per continuare.

db migrations

Per le Impostazioni di sistema, seleziona la lingua predefinita in inglese e inserisci i dettagli del tuo utente admin, email e password. Quindi, fai clic su Avanti di nuovo per confermare.

setup admin

Una volta completata l’installazione, vedrai l’output ‘Hai installato SolidInvoice con successo!‘ e ulteriori istruzioni per creare un cron job.

installation finished

Torna al terminale del server e crea un nuovo cron job per l’utente www-data con il comando qui sotto.

sudo crontab -u www-data -e

Incolla lo script crontab dalla pagina, quindi salva e chiudi il file.

* * * * * php /var/www/solidinvoice/bin/console cron:run -e prod -n

Torna al tuo browser web e fai clic su Accedi ora.

login

Ora ti verrà chiesto di creare il nome della tua azienda e la valuta predefinita. Fai clic su Crea per confermare.

create orgz

Se tutto va bene, dovresti vedere il dashboard di SolidInvoice come segue.

dashboard

Conclusione

Congratulazioni! Hai installato SolidInvoice su un server Ubuntu 22.04. Hai SolidInvoice in esecuzione con il LAMP Stack (Apache, MySQL/MariaDB e PHP) su Ubuntu e hai protetto la tua installazione con HTTPS tramite Letsencrypt. Ora puoi aggiungere nuovi componenti come il server SMTP a SolidInvoice e utilizzarlo.

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.