Configurare il server
Per prima cosa, imposta il tuo server presso il tuo provider cloud preferito. Evt. Imposta le chiavi SSH, invece dell'autenticazione con password di root
Installa Typesense
Al momento in cui scrivo, questi sono i passaggi di installazione (scarica la versione più aggiornata tramite il sito di Typesense):
# x64 curl -O https://dl.typesense.org/releases/0.25.2/typesense-server-0.25.2-amd64.deb sudo apt install ./typesense-server-0.25.2-amd64.deb # arm64 curl -O https://dl.typesense.org/releases/0.25.2/typesense-server-0.25.2-arm64.deb sudo apt install ./typesense-server-0.25.2-arm64.deb # Avvia Typesense sudo systemctl start typesense-server.servicePuoi trovare i passaggi più aggiornati qui: https://typesense.org/docs/guide/install-typesense.html#deb-package-on-ubuntu-debian .
Collega un dominio tramite DNS all'IP del tuo server
Collega il tuo dominio tramite un record DNS A:
Un IPOFYOURSERVER di yoursearchdomain.com
Andare in onda senza un certificato SSL
Puoi ottenere la tua chiave API dal file: /etc/typesense/typesense-server.ini . Se necessario, puoi modificare questa chiave.
Se installassi Typesense in Laravel Scout, PHP o un altro provider, potrebbe già funzionare. Quando utilizzi queste variabili in .env o in scout.php:
TYPESENSE_HOST=tuodominiodiricerca.com // o IPOFYOURSERVER
TYPESENSE_PORT=8108
TYPESENSE_PROTOCOL=http
TYPESENSE_API_KEY=LA TUA CHIAVE Ad esempio, se provi ad importare dati con Laravel Scout, dovrebbe funzionare.
Ma per una maggiore sicurezza è meglio usare SSL per proteggere i dati.
Installa SSL con Certbot
Al momento, esegui:
sudo snap install core; sudo snap refresh core # se hai già eseguito certbot, disinstallalo prima (tieni presente che i precedenti certificati SSL potrebbero andare offline) # sudo apt remove certbot # abilita la porta 443 se il firewall è attivo sudo ufw allow 443 # potrebbe essere che anche la porta 80 sia richiesta per certbot sudo ufw allow 80 sudo snap install --classic certbot sudo ln -s /snap/bin/certbot /usr/bin/certbot sudo certbot certonly --standalone -d your_domainGrazie a Oceano digitale per la guida all'installazione di Certbot in modalità classica.
Riceverai i file del certificato come output. Ad esempio:
Certificato ricevuto con successo. Il certificato è salvato in: /etc/letsencrypt/live/yourdomain.com/fullchain.pem La chiave è salvata in: /etc/letsencrypt/live/yourdomain.com/privkey.pem ...Modifica questo file: /etc/typesense/typesense-server.ini e aggiungi i percorsi dei certificati:
certificato-ssl=/etc/letsencrypt/live/tuodominio.com/fullchain.pem chiave-certificato-ssl=/etc/letsencrypt/live/tuodominio.com/privkey.pemCambia la seguente variabile
porta api = 8108A:
porta api = 443Vai a: https://tuodominio.com/health
Dovrebbe visualizzare:
{"ok":vero}Imposta il firewall
Prova sudo ufw status. Probabilmente è aperto a tutto il traffico. Assicurati che siano disponibili solo poche porte, probabilmente 443 e la tua porta ssh (probabilmente la porta 22) e se ufw non è abilitato:
sudo ufw allow 443 sudo ufw allow 22 # o qualsiasi altra porta sshAssicurati che queste porte siano corrette, può disabilitare l'accesso al tuo VPS/server completo. Dopodiché, abilita il Firewall:
sudo ufw abilitaImposta il file di configurazione Typesense:
A proposito, quando si imposta la configurazione del server, selezionare l'ultima versione di Typesense. È possibile aggiungere parametri extra al file: /etc/typesense/typesense-server.ini .
https://typesense.org/docs/0.25.2/api/server-configuration.html
Imposta CORS
Puoi anche impostare cors-domains, in modo che le chiamate javascript siano consentite solo da determinati domini in /etc/typesense/typesense-server.ini :
enable-cors=true cors-domains=https://tuodominio1.com,https://tuodominio2.comFacoltativo: crea un backup regolare
Ad esempio, puoi creare uno snapshot ogni giorno e creare un backup con tarsnap e agisce.
Crea un file shell denominato make-snapshot.sh. Sostituisci le variabili e inserisci l'URL (e la porta) della tua istanza Typesense e scegli il percorso snapshot corretto.
#!/bin/bash curl "http://localhost:8108/operations/snapshot?snapshot_path=/tmp/typesense-data-snapshot" -X POST \ -H "Tipo di contenuto: application/json" \ -H "X-KEY API DI TIPO SENSE: ${KEY_API_DI_TIPO}"Assicuratevi che il chmod sia stato impostato correttamente.
Quindi assicurati che il contenuto di questa directory venga sottoposto a backup con frequenza
Maggiori informazioni su: https://typesense.org/docs/guide/backups.html .
Facoltativo: installare un server di monitoraggio o un pacchetto di hosting per il monitoraggio del server
Abbiamo appena lanciato un nostro semplice pacchetto, chiamato PHPTypesenseAdmin, che monitora la tua istanza appena creata tramite una semplice interfaccia web su PHP.

Altre guide utili:
- Impostazione di Typesense tramite un'immagine Docker: Guida ServiceStack
- Creare PHPTypesenseAdmin per monitorare alcune variabili
Ultimo aggiornamento il 29 Luglio 2025


