Configurar servidor
Primero, configure su servidor en su proveedor de nube favorito. Evt. Configure claves SSH, en lugar de autenticación de contraseña de root
Instalar Typesense
Al momento de escribir esto, estos son los pasos de instalación (obtenga la versión más actualizada a través del sitio de 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 # Iniciar Typesense sudo systemctl iniciar tiposense-server.servicePuede encontrar los pasos más actualizados aquí: https://typesense.org/docs/guide/install-typesense.html#deb-package-on-ubuntu-debian .
Vincula un dominio vía DNS a la IP de tu servidor
Enlace a su dominio a través de un registro DNS A:
A tudominiodebusqueda.com IPOFYTUSERVIDOR
Publicar sin un certificado SSL
Puede obtener su clave API del archivo: /etc/typesense/typesense-server.ini. Si es necesario, puede ajustar esta clave.
Si instalara Typesense en Laravel Scout, PHP u otro proveedor, ya podría funcionar ahora. Cuando usas estas variables en .env o en scout.php:
TYPESENSE_HOST=tudominiodebúsqueda.com // o IPOFYOURSERVER
TYPESENSE_PORT=8108
TYPESENSE_PROTOCOL=http
TYPESENSE_API_KEY=TU CLAVE Por ejemplo, cuando intentas Laravel Scout para importar datos, debería funcionar.
Pero, para hacerlo más seguro, es mejor utilizar SSL para proteger los datos.
Instalar SSL con Certbot
Por el momento ejecuta:
sudo snap install core; sudo snap refresh core # si ejecutó certbot antes, desinstálelo primero (tenga en cuenta que los certificados SSL anteriores pueden quedar fuera de línea) # sudo apt remove certbot # habilitar el puerto 443 si el firewall está activo sudo ufw allow 443 # es posible que el puerto 80 también sea necesario para 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_domainGracias a Océano digital para obtener la guía para instalar Certbot en modo clásico.
Recibirá los archivos del certificado como resultado. Por ejemplo:
Certificado recibido exitosamente. El certificado se guarda en: /etc/letsencrypt/live/yourdomain.com/fullchain.pem La clave se guarda en: /etc/letsencrypt/live/yourdomain.com/privkey.pem...Edite este archivo: /etc/typesense/typesense-server.ini y agregue las ubicaciones de los certificados:
ssl-certificate=/etc/letsencrypt/live/yourdomain.com/fullchain.pem ssl-certificate-key=/etc/letsencrypt/live/yourdomain.com/privkey.pemCambiar la siguiente variable
puerto API = 8108A:
puerto API = 443Vaya a: https://tudominio.com/salud
Debería mostrar:
{"bien": verdadero}Configurar cortafuegos
Pruebe el estado de Sudo ufw. Probablemente esté abierto a todo el tráfico. Asegúrese de que solo haya unos pocos puertos disponibles, probablemente el 443 y su puerto ssh (probablemente el puerto 22) y si ufw no está habilitado:
sudo ufw permitir 443 sudo ufw permitir 22 # o cualquier otro puerto sshAsegúrese de que estos puertos sean correctos, puede deshabilitar el acceso a su VPS/servidor completo. Después de eso, habilite el Firewall:
habilitar sudo ufwConfigure el archivo de configuración de Typesense:
Por cierto, seleccione la última versión de Typesense al configurar la configuración del servidor. Puede agregar parámetros adicionales en el archivo: /etc/typesense/typesense-server.ini .
https://typesense.org/docs/0.25.2/api/server-configuration.html
Configurar CORS
También puede configurar cors-domains, de modo que las llamadas de JavaScript solo se permitan desde ciertos dominios en /etc/typesense/typesense-server.ini :
enable-cors=true cors-domains=https://tudominio1.com,https://tudominio2.comOpcional: cree una copia de seguridad periódica
Por ejemplo, puede crear una instantánea todos los días y crear una copia de seguridad con tarsnap y actos.
Cree un archivo de shell llamado make-snapshot.sh. Reemplace las variables e inserte la URL (y el puerto) de su instancia de Typesense y elija la ruta de instantánea correcta.
#!/bin/bash curl "http://localhost:8108/operaciones/snapshot?snapshot_path=/tmp/typesense-data-snapshot" -X POST \ -H "Tipo de contenido: aplicación/json" \ -H " X-TYPESENSE-API-KEY: ${TYPESENSE_API_KEY}"Asegúrate de que esté modificado correctamente.
Luego asegúrese de que se realice una copia de seguridad del contenido de este directorio con frecuencia.
Más información en: https://typesense.org/docs/guide/backups.html .
Opcional: Instale un servidor de monitoreo o un paquete de hospedaje para monitorear el servidor.
Acabamos de lanzar un paquete propio y sencillo, llamado PHPTypesenseAdmin, que monitorea su instancia recién creada a través de una sencilla interfaz web en PHP.

Guías más útiles:
- Configurar Typesense a través de una imagen de Docker: Guía de ServiceStack
- Crear PHPTypesenseAdmin para monitorear algunas variables
Última actualización: 29 de julio de 2025


