bolt Valebyte VPS desde $4/mes — NVMe, despliegue en 60s.

Obtener VPS arrow_forward
eco Principiante Tutorial/Cómo hacer

Instalación de LimeSurvey

calendar_month Aug 05, 2026 schedule 20 min de lectura visibility 21 vistas
Установка LimeSurvey на VPS: настройка опросов и баз данных
info

¿Necesitas un servidor para esta guía? Ofrecemos servidores dedicados y VPS en más de 50 países con configuración instantánea.

¿Necesitas un VPS para esta guía?

Explore otras opciones de servidores dedicados en

Instalación de LimeSurvey en un VPS: configuración de encuestas y bases de datos

TL;DR

En esta guía detallada, configuraremos paso a paso un potente sistema para realizar encuestas en línea LimeSurvey en su propio servidor privado virtual (VPS). Aprenderá a preparar un servidor basado en Ubuntu 24.04 LTS, instalar la pila de software necesaria (Nginx, MariaDB, PHP 8.3), configurar LimeSurvey, asegurar la comunicación con HTTPS y configurar copias de seguridad automáticas, obteniendo control total sobre sus datos y encuestas.

  • Configuración de un VPS seguro y de alto rendimiento en Ubuntu 24.04 LTS.
  • Instalación y configuración del servidor web Nginx, la base de datos MariaDB y PHP 8.3.
  • Despliegue de la versión actual de LimeSurvey (7.x) para realizar encuestas profesionales.
  • Protección de LimeSurvey con HTTPS, utilizando Caddy para la emisión automática de certificados SSL.
  • Creación de un sistema de copia de seguridad fiable para proteger los datos y la configuración de las encuestas.
  • Resolución de problemas comunes y respuestas a preguntas frecuentes sobre la operación de LimeSurvey en un VPS.

¿Qué configuramos y por qué?

Diagrama: ¿Qué configuramos y por qué?
Diagrama: ¿Qué configuramos y por qué?

En esta guía, nos centraremos en la instalación y configuración de LimeSurvey, una plataforma potente, flexible y completamente personalizable para crear y realizar encuestas en línea. LimeSurvey es un software de código abierto, lo que le otorga control total sobre sus datos, funcionalidad y escalabilidad.

Al finalizar todos los pasos, obtendrá una instalación de LimeSurvey completamente funcional en su propio VPS, accesible a través de un nombre de dominio y protegida por el protocolo HTTPS. Esto le permitirá crear encuestas complejas, recopilar y analizar datos sin las limitaciones inherentes a muchos servicios en la nube, y al mismo tiempo garantizar la máxima confidencialidad para sus encuestados.

LimeSurvey es adecuado para una amplia gama de tareas: desde investigaciones académicas y campañas de marketing hasta encuestas corporativas internas y recopilación de comentarios de clientes. Gracias a su amplio conjunto de funciones, que incluye lógica de ramificación, varios tipos de preguntas, importación/exportación de datos y soporte multilingüe, LimeSurvey supera en capacidades a muchas soluciones propietarias.

Alternativas: Cloud-managed vs. Self-hosted en un VPS

Existen numerosas soluciones para realizar encuestas en el mercado. Se pueden dividir condicionalmente en dos categorías:

  • Cloud-managed (servicios en la nube): Entre ellas se encuentran plataformas como SurveyMonkey, Google Forms, Typeform. Ofrecen facilidad de uso, no requieren conocimientos técnicos para su implementación y a menudo tienen una interfaz intuitiva. Sin embargo, tienen desventajas significativas:
    • Limitaciones: A menudo existen límites en el número de encuestas, preguntas, encuestados o funciones disponibles en los planes gratuitos/económicos.
    • Costo: Para funciones avanzadas y grandes volúmenes de datos, la tarifa mensual puede ser considerable.
    • Control de datos: Sus datos se almacenan en servidores de terceros, lo que puede ser inaceptable desde el punto de vista de la privacidad, la seguridad o el cumplimiento normativo (por ejemplo, GDPR).
    • Personalización: Las posibilidades de adaptar la apariencia y la funcionalidad a sus necesidades suelen ser muy limitadas.
  • Self-hosted en un VPS/Dedicated Server (alojamiento propio): Este es el enfoque que utilizaremos con LimeSurvey. Usted instala el software en su propio servidor. Ventajas:
    • Control total: Usted es el propietario total del servidor, el software y todos los datos. Esto es crítico para encuestas confidenciales.
    • Flexibilidad y personalización: Posibilidad de modificar el código, instalar plugins, adaptar el diseño y la funcionalidad sin restricciones.
    • Escalabilidad: Puede escalar fácilmente los recursos del servidor (CPU, RAM, disco) a medida que crecen las necesidades, sin pagar de más por funciones innecesarias.
    • Costo a largo plazo: Para grandes volúmenes de encuestas o uso prolongado, el costo de poseer un VPS a menudo resulta ser menor que una suscripción a servicios en la nube.

Elegir una solución self-hosted en un VPS para LimeSurvey es optar por la máxima libertad, seguridad y control sobre su infraestructura de encuestas, lo cual es especialmente valioso para desarrolladores, startups y empresas que se toman en serio sus datos.

¿Qué configuración de VPS se necesita para esta tarea?

Diagrama: ¿Qué configuración de VPS se necesita para esta tarea?
Diagrama: ¿Qué configuración de VPS se necesita para esta tarea?

La elección de la configuración correcta del VPS es crucial para el funcionamiento estable y rápido de LimeSurvey. Los requisitos pueden variar según la carga esperada: el número de encuestas activas, el número de encuestados, la complejidad de la lógica de las encuestas y el volumen de datos almacenados.

Requisitos mínimos para LimeSurvey 7.x (actualizado a 2026)

Para una instalación pequeña, varias encuestas activas y hasta 1000 encuestados al mes:

  • CPU: 2 núcleos (por ejemplo, Intel Xeon E5 o similar)
  • RAM: 4 GB DDR4 (para SO, servidor web, PHP-FPM y base de datos)
  • Disco: 50 GB SSD (para SO, software, base de datos y archivos de LimeSurvey. SSD es obligatorio para un buen rendimiento de la BD)
  • Red: 100 Mbps (con tráfico ilimitado o volumen suficiente)
  • Sistema operativo: Ubuntu Server 24.04 LTS

Plan de VPS recomendado para cargas medias

Para varias decenas de encuestas activas, hasta 10 000 encuestados al mes y lógica más compleja:

  • CPU: 4 núcleos (procesador moderno, por ejemplo, Intel Xeon Scalable o AMD EPYC)
  • RAM: 8 GB DDR4
  • Disco: 100-200 GB NVMe SSD (para máxima velocidad de lectura/escritura de BD)
  • Red: 1 Gbps
  • Sistema operativo: Ubuntu Server 24.04 LTS

Un VPS adecuado con las características mencionadas se puede adquirir, por ejemplo, en esta página: VPS con las características mencionadas.

Cuándo se necesita un Dedicated Server y no un VPS

En la mayoría de los casos, un VPS será suficiente para LimeSurvey. Sin embargo, si planea:

  • Cargas muy altas: Decenas de miles de encuestados simultáneos, cientos de miles de encuestas al mes.
  • Rendimiento crítico: Mínima latencia en las respuestas a las encuestas, análisis de datos muy rápido.
  • Máximo aislamiento: Requisitos de seguridad o reguladores que no permiten la virtualización en una infraestructura compartida.
  • Grandes volúmenes de datos: Bases de datos que se miden en cientos de gigabytes o terabytes.

En tales escenarios, un dedicated server (servidor dedicado) le proporcionará acceso exclusivo a todos los recursos físicos, lo que garantizará el máximo rendimiento y control. Puede encontrar un servidor dedicado adecuado aquí: dedicated adecuado.

Ubicación: qué factores influye

La elección de la ubicación geográfica de su VPS o servidor dedicado es importante por varias razones:

  • Latencia: Ubique el servidor lo más cerca posible de su audiencia principal de encuestados. Una menor latencia mejora la experiencia del usuario y la velocidad de carga de las páginas de las encuestas.
  • Legislación: En algunas jurisdicciones existen requisitos estrictos para el almacenamiento de datos personales (por ejemplo, GDPR en Europa). Asegúrese de que la ubicación seleccionada cumpla con todas las leyes y regulaciones aplicables.
  • Disponibilidad: Elija proveedores con buena reputación en cuanto a tiempo de actividad y estabilidad de la red en la región seleccionada.

Un enfoque cuidadoso en la elección de la configuración y la ubicación del servidor sentará una base sólida para el funcionamiento estable y eficiente de su plataforma LimeSurvey.

Preparación del servidor

Esquema: Preparación del servidor
Esquema: Preparación del servidor

Antes de instalar LimeSurvey, es necesario realizar una configuración básica y reforzar la seguridad de su nuevo VPS. Utilizaremos Ubuntu Server 24.04 LTS, ya que es una versión actual y soportada hasta 2026, que ofrece estabilidad y paquetes actualizados.

1. Conexión al servidor y actualización del sistema

Conéctese a su servidor a través de SSH con la cuenta de usuario root o con el usuario proporcionado por el proveedor:


ssh root@ВАШ_IP_АДРЕС

Primero, actualice la lista de paquetes y los paquetes instalados a las últimas versiones:


sudo apt update             # Actualizar la lista de paquetes disponibles
sudo apt upgrade -y         # Actualizar todos los paquetes instalados
sudo apt autoremove -y      # Eliminar dependencias innecesarias

2. Creación de un nuevo usuario con permisos sudo

Trabajar como usuario root no es seguro. Crearemos un nuevo usuario con el que trabajaremos:


sudo adduser limesurveyuser         # Crear un nuevo usuario con el nombre 'limesurveyuser'
sudo usermod -aG sudo limesurveyuser # Añadir el usuario al grupo sudo para que pueda ejecutar comandos con privilegios de administrador

Ahora, salga de la sesión root e inicie sesión con el nuevo usuario:


exit
ssh limesurveyuser@ВАШ_IP_АДРЕС

3. Configuración de la autenticación por claves SSH (recomendado)

Para mejorar la seguridad, se recomienda deshabilitar el inicio de sesión con contraseña y usar solo claves SSH. Si aún no tiene una clave SSH, genérela en su máquina local:


# En su máquina local
ssh-keygen -t rsa -b 4096 -C "[email protected]"

Copie la clave pública al servidor:


# En su máquina local
ssh-copy-id limesurveyuser@ВАШ_IP_АДРЕС

Luego, en el servidor, edite el archivo de configuración del demonio SSH para deshabilitar el inicio de sesión con contraseña:


sudo nano /etc/ssh/sshd_config

Encuentre y modifique las siguientes líneas:


PasswordAuthentication no
PermitRootLogin no

Guarde el archivo (Ctrl+O, Enter) y salga (Ctrl+X). Reinicie el servicio SSH:


sudo systemctl restart sshd

Importante: ¡Asegúrese de poder iniciar sesión con la clave SSH antes de deshabilitar la autenticación por contraseña!

4. Configuración del firewall (UFW)

Configuraremos UFW (Uncomplicated Firewall) para permitir solo el tráfico necesario:


sudo ufw allow OpenSSH         # Permitir conexiones SSH
sudo ufw allow http            # Permitir HTTP (puerto 80)
sudo ufw allow https           # Permitir HTTPS (puerto 443)
sudo ufw enable                # Habilitar el firewall
sudo ufw status                # Verificar el estado del firewall

Confirme la activación del firewall introduciendo y.

5. Instalación de Fail2ban

Fail2ban protege el servidor contra ataques de fuerza bruta, bloqueando las direcciones IP desde las que se producen intentos fallidos de inicio de sesión:


sudo apt install fail2ban -y   # Instalación de Fail2ban
sudo systemctl enable fail2ban # Habilitar el inicio automático al arrancar el sistema
sudo systemctl start fail2ban  # Iniciar el servicio
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local # Copiar la configuración para futuras modificaciones
sudo nano /etc/fail2ban/jail.local # Editar la configuración local

En el archivo jail.local puede configurar parámetros como el tiempo de bloqueo (bantime) y el número de intentos fallidos (maxretry). Asegúrese de que la sección [sshd] esté activa (es decir, no comentada):


[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
bantime = 1h

Guarde el archivo y reinicie Fail2ban:


sudo systemctl restart fail2ban
sudo fail2ban-client status sshd # Verificar el estado de funcionamiento para SSH

Ahora su servidor tiene una protección básica pero efectiva y está listo para la instalación del software principal.

Instalación de software — Paso a paso

Esquema: Instalación de software — Paso a paso
Esquema: Instalación de software — Paso a paso

Para que LimeSurvey funcione, necesitaremos un servidor web (Nginx), una base de datos (MariaDB) y un intérprete de PHP con las extensiones necesarias. Instalaremos las versiones actuales disponibles en los repositorios de Ubuntu 24.04 LTS para 2026.

1. Instalación de Nginx

Nginx es un servidor web de alto rendimiento, ideal para servir contenido estático y para actuar como proxy inverso para PHP-FPM.


sudo apt install nginx -y           # Instalación del servidor web Nginx
sudo systemctl enable nginx         # Habilitar el inicio automático de Nginx al arrancar el sistema
sudo systemctl start nginx          # Iniciar Nginx
sudo ufw allow 'Nginx Full'         # Permitir tráfico para Nginx (HTTP y HTTPS) en el firewall
sudo ufw delete allow 'Nginx HTTP'  # Eliminar la regla HTTP antigua, si existía
sudo ufw delete allow http          # Eliminar la regla http antigua, si existía
sudo ufw delete allow https         # Eliminar la regla https antigua, si existía
sudo ufw status                     # Verificar el estado de UFW

Debería ver que 'Nginx Full' está permitido. Verifique el funcionamiento de Nginx abriendo la dirección IP de su servidor en el navegador. Debería ver la página de bienvenida estándar de Nginx.

2. Instalación de MariaDB

MariaDB es un sistema de gestión de bases de datos potente y rápido, compatible con MySQL. LimeSurvey utiliza activamente la base de datos para almacenar todas las encuestas, respuestas y configuraciones.


sudo apt install mariadb-server -y  # Instalación del servidor MariaDB
sudo systemctl enable mariadb       # Habilitar el inicio automático de MariaDB
sudo systemctl start mariadb        # Iniciar MariaDB

Ejecute el script para la configuración inicial de seguridad de MariaDB:


sudo mysql_secure_installation      # Ejecutar el script de seguridad de MariaDB

Siga las instrucciones: establezca una contraseña para el usuario root de la base de datos, elimine usuarios anónimos, prohíba el inicio de sesión remoto para root y elimine la base de datos de prueba. Responda Y a todas las preguntas.

3. Instalación de PHP 8.3 y extensiones necesarias

LimeSurvey está escrito en PHP, y para su funcionamiento requiere un intérprete y un conjunto de extensiones adecuados. Para 2026, PHP 8.3 es la versión actual y recomendada.


sudo apt install php8.3-fpm php8.3-mysql php8.3-mbstring php8.3-xml php8.3-gd php8.3-zip php8.3-curl php8.3-json php8.3-intl php8.3-ldap php8.3-gmp php8.3-apcu -y # Instalación de PHP-FPM 8.3 y extensiones necesarias
sudo systemctl enable php8.3-fpm    # Habilitar el inicio automático de PHP-FPM
sudo systemctl start php8.3-fpm     # Iniciar PHP-FPM

Nota: La extensión php8.3-apcu se recomienda para el almacenamiento en caché en LimeSurvey, lo que mejora el rendimiento.

4. Creación de la base de datos y usuario para LimeSurvey

Conéctese a MariaDB como usuario root (de la base de datos) y cree una base de datos y un usuario para LimeSurvey.


sudo mysql -u root -p               # Conexión a MariaDB, introduzca la contraseña de root de la BD que estableció anteriormente

Ejecute los siguientes comandos SQL (reemplace limesurvey_db, limesurvey_user y ВАШ_НАДЕЖНЫЙ_ПАРОЛЬ con sus propios valores):


CREATE DATABASE limesurvey_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; # Crear la base de datos
CREATE USER 'limesurvey_user'@'localhost' IDENTIFIED BY 'ВАШ_НАДЕЖНЫЙ_ПАРОЛЬ'; # Crear el usuario
GRANT ALL PRIVILEGES ON limesurvey_db. TO 'limesurvey_user'@'localhost'; # Otorgar todos los privilegios sobre la base de datos
FLUSH PRIVILEGES; # Actualizar privilegios
EXIT; # Salir de MariaDB

5. Descarga y descompresión de LimeSurvey

Vaya a un directorio temporal, descargue la última versión estable de LimeSurvey (se asume LimeSurvey 7.x para 2026) y descomprímala.


cd /tmp
wget https://download.limesurvey.org/latest-stable-release/limesurvey7.x.zip # Descargar la versión actual de LimeSurvey 7.x (reemplace con el enlace exacto para 2026)
sudo apt install unzip -y           # Instalación de la utilidad para descomprimir archivos ZIP
sudo unzip limesurvey7.x.zip        # Descomprimir el archivo

Mueva los archivos descomprimidos al directorio donde Nginx los servirá. Normalmente es /var/www/html o un directorio creado específicamente.


sudo mkdir -p /var/www/limesurvey   # Crear directorio para LimeSurvey
sudo mv /tmp/limesurvey/ /var/www/limesurvey/ # Mover los archivos de LimeSurvey
sudo chown -R www-data:www-data /var/www/limesurvey # Establecer el propietario del directorio para Nginx/PHP-FPM
sudo chmod -R 755 /var/www/limesurvey # Establecer permisos de archivo

Ahora todos los componentes están instalados y estamos listos para su configuración.

Configuración

Diagrama: Configuración
Diagrama: Configuración

Después de instalar todos los componentes, es necesario configurarlos correctamente para que LimeSurvey pueda funcionar. Esto incluye la configuración de Nginx, PHP-FPM y la obtención de un certificado SSL para HTTPS.

1. Configuración de Nginx para LimeSurvey

Crearemos un nuevo archivo de configuración de Nginx para su dominio. Reemplace yourdomain.com con su dominio real.


sudo nano /etc/nginx/sites-available/yourdomain.com

Pegue el siguiente contenido:


server {
    listen 80;
    server_name yourdomain.com www.yourdomain.com;
    root /var/www/limesurvey;
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php8.3-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~ /\.ht {
        deny all;
    }

    # Prohibir el acceso a directorios confidenciales de LimeSurvey
    location ~ /(application|framework|installer)/ {
        deny all;
        return 404;
    }
    location ~ /(config|protected|tmp|upload)/ {
        deny all;
        return 404;
    }

    # Prohibir el acceso a archivos confidenciales
    location ~ /\. {
        deny all;
        access_log off;
        log_not_found off;
    }
}

Guarde el archivo y cree un enlace simbólico a él en sites-enabled, luego verifique la configuración de Nginx y reinícielo:


sudo ln -s /etc/nginx/sites-available/yourdomain.com /etc/nginx/sites-enabled/
sudo nginx -t                 # Verificar la sintaxis de la configuración de Nginx
sudo systemctl restart nginx  # Reiniciar Nginx

2. Instalación y configuración de Caddy para HTTPS (recomendado)

Caddy es un servidor web moderno que gestiona automáticamente los certificados SSL de Let's Encrypt, lo que hace que la configuración de HTTPS sea increíblemente sencilla. Utilizaremos Caddy como proxy inverso delante de Nginx para que maneje las conexiones HTTPS y emita certificados.


sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https # Instalar los paquetes necesarios
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg # Añadir la clave GPG de Caddy
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list # Añadir el repositorio de Caddy
sudo apt update                       # Actualizar la lista de paquetes
sudo apt install caddy -y             # Instalar Caddy
sudo systemctl enable caddy           # Habilitar el inicio automático de Caddy
sudo systemctl start caddy            # Iniciar Caddy

Ahora configuraremos el Caddyfile. Elimine o comente el bloque server de Nginx existente para el puerto 80, ya que Caddy manejará las solicitudes entrantes. Abra el archivo de configuración de Nginx para su dominio y comente las líneas listen 80; y server_name yourdomain.com www.yourdomain.com;. Nginx ahora solo escuchará en un puerto local, por ejemplo 127.0.0.1:8080.


sudo nano /etc/nginx/sites-available/yourdomain.com

Modifique la sección server para que se vea aproximadamente así (añada listen 127.0.0.1:8080;):


server {
    listen 127.0.0.1:8080; # Nginx escuchará en el puerto local
    # server_name yourdomain.com www.yourdomain.com; # Comente o elimine
    root /var/www/limesurvey;
    index index.php index.html index.htm;

    # ... el resto de la configuración de Nginx sin cambios ...
}

sudo nginx -t
sudo systemctl restart nginx

Ahora cree el Caddyfile:


sudo nano /etc/caddy/Caddyfile

Pegue el siguiente contenido (reemplace yourdomain.com):


yourdomain.com {
    reverse_proxy 127.0.0.1:8080
    file_server {
        root /var/www/limesurvey
    }
}

Guarde el archivo y reinicie Caddy:


sudo systemctl reload caddy

Caddy obtendrá e instalará automáticamente los certificados SSL. Ahora puede acceder a https://yourdomain.com.

3. Finalización de la instalación de LimeSurvey a través de la interfaz web

Abra su dominio en el navegador (por ejemplo, https://yourdomain.com). Será redirigido a la página de instalación de LimeSurvey. Siga las instrucciones:

  1. Selección de idioma: Seleccione el idioma y haga clic en "Start".
  2. Licencia: Acepte el acuerdo de licencia.
  3. Verificación de requisitos previos: Asegúrese de que todas las extensiones PHP necesarias y los permisos de archivo estén marcados como "OK". Si hay advertencias, regrese e instale las extensiones faltantes o corrija los permisos de acceso (sudo chown -R www-data:www-data /var/www/limesurvey).
  4. Configuración de la base de datos:
    • Tipo de base de datos: MySQL (o MariaDB)
    • Nombre de host: localhost
    • Puerto: 3306
    • Nombre de la base de datos: limesurvey_db (la que creó)
    • Nombre de usuario de la base de datos: limesurvey_user (el que creó)
    • Contraseña de la base de datos: SU_CONTRASEÑA_SEGURA
    Haga clic en "Next".
  5. Creación de tablas: LimeSurvey creará las tablas necesarias en su base de datos.
  6. Configuración del administrador: Establezca el nombre de usuario (por ejemplo, admin), la contraseña, la dirección de correo electrónico y el nombre del administrador para iniciar sesión en LimeSurvey.

Una vez completada la instalación, será redirigido a la página de inicio de sesión del panel de administración de LimeSurvey. ¡Asegúrese de eliminar el directorio /var/www/limesurvey/install por seguridad!


sudo rm -rf /var/www/limesurvey/install

4. Verificación de funcionamiento

Abra https://yourdomain.com/admin en su navegador e inicie sesión con la cuenta de administrador. Verifique que puede crear nuevas encuestas, gestionar usuarios y ver la configuración del sistema.

Con curl puede verificar la disponibilidad de la página principal:


curl -I https://yourdomain.com # Verificamos los encabezados HTTP, asegurándonos de la presencia de HTTPS

Debería ver el estado HTTP/2 200 y los encabezados que indican una conexión exitosa.

En este punto, su instalación de LimeSurvey está completamente configurada y lista para funcionar.

Copias de seguridad y mantenimiento

Diagrama: Copias de seguridad y mantenimiento
Diagrama: Copias de seguridad y mantenimiento

Las copias de seguridad regulares y el mantenimiento oportuno son cruciales para cualquier sistema en producción, incluido LimeSurvey. Esto garantiza la integridad de los datos de sus encuestas y la estabilidad de la plataforma.

1. Qué respaldar

Para una recuperación completa de LimeSurvey, es necesario respaldar dos componentes principales:

  • Base de datos de LimeSurvey: Contiene todas las encuestas, preguntas, respuestas, usuarios y configuraciones del sistema. Este es el componente más importante.
  • Archivos de LimeSurvey: Incluyen el núcleo de la aplicación, plugins, temas, así como las cargas de usuario (por ejemplo, imágenes adjuntas a preguntas o respuestas). El directorio /var/www/limesurvey.

2. Script simple de copia de seguridad automática

Crearemos un script bash simple que realizará una copia de seguridad de la base de datos y los archivos, y luego los archivará. Utilizaremos mariadb-dump para la base de datos y tar para los archivos.


sudo mkdir -p /opt/backups/limesurvey # Crear directorio para almacenar las copias de seguridad
sudo chown -R limesurveyuser:limesurveyuser /opt/backups # Establecer propietario para el nuevo usuario
nano /opt/backups/limesurvey/backup_script.sh

Pegue el siguiente contenido, reemplazando los datos de su base de datos:


#!/bin/bash

# Configuración de la base de datos
DB_NAME="limesurvey_db"
DB_USER="limesurvey_user"
DB_PASS="SU_CONTRASEÑA_SEGURA" # Use la contraseña del usuario de la base de datos creado para LimeSurvey

# Directorios
BACKUP_DIR="/opt/backups/limesurvey"
LIME_DIR="/var/www/limesurvey"

# Nombre del archivo de copia de seguridad
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
DB_BACKUP_FILE="${BACKUP_DIR}/limesurvey_db_${TIMESTAMP}.sql"
FILES_BACKUP_FILE="${BACKUP_DIR}/limesurvey_files_${TIMESTAMP}.tar.gz"

echo "Iniciando copia de seguridad de LimeSurvey..."

# 1. Copia de seguridad de la base de datos
echo "Creando copia de seguridad de la base de datos..."
if mariadb-dump -u "$DB_USER" -p"$DB_PASS" "$DB_NAME" > "$DB_BACKUP_FILE"; then
    echo "Copia de seguridad de la base de datos creada con éxito: ${DB_BACKUP_FILE}"
else
    echo "¡Error al crear la copia de seguridad de la base de datos!"
    exit 1
fi

# 2. Copia de seguridad de los archivos de LimeSurvey
echo "Creando copia de seguridad de los archivos de LimeSurvey..."
if tar -czf "$FILES_BACKUP_FILE" -C "${LIME_DIR}" .; then
    echo "Copia de seguridad de los archivos creada con éxito: ${FILES_BACKUP_FILE}"
else
    echo "¡Error al crear la copia de seguridad de los archivos!"
    exit 1
fi

# 3. Eliminación de copias de seguridad antiguas (mantener los últimos 7 días)
echo "Eliminando copias de seguridad antiguas (más de 7 días)..."
find "$BACKUP_DIR" -type f -name ".sql" -mtime +7 -delete
find "$BACKUP_DIR" -type f -name ".tar.gz" -mtime +7 -delete
echo "Completado."

Haga que el script sea ejecutable:


sudo chmod +x /opt/backups/limesurvey/backup_script.sh

Pruebe el script ejecutándolo manualmente:


/opt/backups/limesurvey/backup_script.sh

3. Configuración de Cron para el inicio automático de copias de seguridad

Añadiremos una tarea a Cron para que el script se ejecute diariamente, por ejemplo, a las 3 de la madrugada.


crontab -e # Abrir crontab para el usuario actual (limesurveyuser)

Añada la siguiente línea al final del archivo:


0 3   * /opt/backups/limesurvey/backup_script.sh >> /var/log/limesurvey_backup.log 2>&1

Esta línea significa: a las 03:00 cada día, cada mes, cada día de la semana, ejecutar el script y redirigir su salida a un archivo de registro.

4. Dónde almacenar las copias de seguridad (almacenamiento externo)

Almacenar las copias de seguridad en el mismo servidor que el sistema en producción no proporciona una protección completa contra fallos del servidor. Se recomienda encarecidamente mover las copias de seguridad a un almacenamiento externo:

  • Almacenamiento compatible con S3: Servicios en la nube como Amazon S3, DigitalOcean Spaces, Backblaze B2, ofrecen almacenamiento fiable y asequible. Utilice utilidades como s3cmd o rclone para la sincronización automática.
  • VPS separado: Si tiene otro VPS, puede usar rsync o scp para copiar las copias de seguridad a él.
  • Almacenamiento de red local (NAS): Para entornos corporativos.

Ejemplo de cómo añadir rsync para transferir a un servidor remoto (se asume acceso SSH configurado sin contraseña):


# Añada a su backup_script.sh después de crear las copias de seguridad:
echo "Copiando copias de seguridad al servidor remoto..."
rsync -avz --remove-source-files "$BACKUP_DIR/" user@remote_server:/path/to/remote/backups/limesurvey/
echo "Copia completada."

5. Actualizaciones: Rolling vs. Ventana de Mantenimiento

La actualización de LimeSurvey y del software del sistema requiere precaución:

  • Actualizaciones del sistema (Rolling): Ejecute regularmente sudo apt update && sudo apt upgrade -y para instalar parches de seguridad y actualizaciones del sistema operativo. Esto se puede hacer con relativa frecuencia.
  • Actualizaciones de LimeSurvey (Ventana de Mantenimiento): Las actualizaciones de la propia plataforma LimeSurvey (por ejemplo, de 7.0 a 7.1 o de 7.x a 8.x) pueden introducir cambios significativos.
    • Siempre realice una copia de seguridad completa antes de actualizar LimeSurvey.
    • Realice la actualización en una "ventana de mantenimiento", cuando se espere un número mínimo de encuestados.
    • Lea atentamente el changelog y las instrucciones de actualización en el sitio web oficial de LimeSurvey.
    • Considere la posibilidad de utilizar un entorno de staging (una copia de su servidor de producción) para probar las actualizaciones antes de aplicarlas en el servidor en producción.

Mantenga su servidor y LimeSurvey actualizados para garantizar la seguridad y el acceso a nuevas funciones.

Solución de problemas + Preguntas frecuentes

En esta sección se recopilan los problemas típicos que pueden surgir durante la instalación y operación de LimeSurvey en un VPS, así como las respuestas a las preguntas frecuentes.

¿Qué configuración mínima de VPS es adecuada para LimeSurvey?

Para una instalación pequeña de LimeSurvey con varias encuestas activas y hasta 1000 encuestados al mes, se requerirá un VPS mínimo con 2 núcleos de CPU, 4 GB de RAM, 50 GB de disco SSD y una conexión de red estable de 100 Mbit/s. Es importante que el disco sea SSD, ya que el rendimiento de la base de datos depende en gran medida de la velocidad de lectura/escritura.

¿Qué elegir: VPS o dedicado para esta tarea?

En la gran mayoría de los casos, un VPS será la opción óptima para LimeSurvey. Ofrece suficiente rendimiento, flexibilidad y rentabilidad. Un servidor dedicado solo se justifica en caso de cargas muy altas (decenas de miles de encuestados simultáneos), requisitos estrictos de aislamiento de recursos, máxima confidencialidad de los datos o la necesidad de procesar enormes volúmenes de datos (cientos de GB o más). Para la mayoría de los usuarios, un VPS es el equilibrio ideal.

¿Por qué LimeSurvey muestra el error 500 (Internal Server Error)?

El error 500 generalmente indica un problema en el lado del servidor. Las causas más comunes para LimeSurvey son:

  • Errores de PHP: Revise los logs de PHP-FPM (sudo tail -f /var/log/php8.3-fpm.log o /var/log/nginx/error.log). Es posible que falten extensiones PHP críticas o que haya errores de sintaxis en la configuración de LimeSurvey.
  • Permisos de acceso a archivos/directorios incorrectos: Asegúrese de que el servidor web (usuario www-data) tenga permisos de lectura para los archivos de LimeSurvey y de escritura en los directorios /var/www/limesurvey/application/config, /var/www/limesurvey/upload, /var/www/limesurvey/tmp. Ejecute sudo chown -R www-data:www-data /var/www/limesurvey y sudo chmod -R 755 /var/www/limesurvey.
  • Error en la configuración de Nginx: Verifique la sintaxis de Nginx (sudo nginx -t) y asegúrese de que todas las rutas a los archivos y al socket de PHP-FPM estén especificadas correctamente.

¿Cómo configurar el envío de correo electrónico en LimeSurvey?

Para enviar invitaciones, notificaciones y confirmaciones, LimeSurvey requiere un servidor de correo configurado. En el panel de administración de LimeSurvey, vaya a Configuration -> Email settings. Puede elegir uno de los siguientes métodos:

  • PHP (default): Utiliza la función mail() de PHP, que requiere un MTA local configurado (por ejemplo, Postfix). Esta es la opción más simple, pero la menos fiable para envíos masivos.
  • SMTP: Método recomendado. Especifique los datos de su servidor SMTP (host, puerto, nombre de usuario, contraseña, tipo de cifrado - TLS/SSL). Puede ser su propio servidor de correo o un servicio de terceros (SendGrid, Mailgun, Yandex.Mail para dominio, etc.).

Asegúrese de que el puerto SMTP (normalmente 587 para TLS o 465 para SSL) esté abierto en su firewall (UFW).

¿Cómo actualizar LimeSurvey sin perder datos?

La actualización de LimeSurvey siempre debe comenzar con una copia de seguridad completa de la base de datos y los archivos. Luego:

  1. Descargue la nueva versión de LimeSurvey desde el sitio web oficial.
  2. Descomprima el archivo.
  3. Mueva los archivos de la nueva versión sobre la antigua, excepto el directorio /application/config (para conservar su configuración). Algunos archivos en otros directorios pueden ser excluidos, siga las instrucciones en el sitio web oficial de LimeSurvey.
  4. Después de reemplazar los archivos, abra su dominio en el navegador. LimeSurvey le ofrecerá automáticamente actualizar la base de datos. Siga las instrucciones del asistente de actualización.
  5. Borre la caché de LimeSurvey, si es necesario.

Siempre lea las instrucciones de actualización oficiales para su versión específica.

Problemas con los permisos de acceso a los archivos de LimeSurvey.

Si ve errores relacionados con la imposibilidad de escribir o leer archivos, esto casi siempre se debe a permisos incorrectos. Asegúrese de que el servidor web (usuario www-data) sea el propietario del directorio de LimeSurvey y tenga los permisos necesarios:


sudo chown -R www-data:www-data /var/www/limesurvey
sudo chmod -R 755 /var/www/limesurvey
# Para algunos directorios pueden ser necesarios permisos de escritura para www-data
sudo chmod -R 775 /var/www/limesurvey/upload
sudo chmod -R 775 /var/www/limesurvey/tmp
sudo chmod -R 775 /var/www/limesurvey/application/config # Para config.php

Después de cambiar los permisos, reinicie Nginx y PHP-FPM.

LimeSurvey funciona lento, ¿qué hacer?

El rendimiento lento puede ser causado por varios factores:

  • Recursos insuficientes del VPS: Verifique la carga de CPU, RAM e IOPS del disco (htop, iotop, free -h). Es posible que se requiera una actualización del VPS.
  • Base de datos no optimizada: Asegúrese de que MariaDB esté configurada para un rendimiento óptimo. Habilite el almacenamiento en caché de consultas si está deshabilitado.
  • Falta de caché de PHP: Asegúrese de que la extensión php8.3-apcu esté instalada y activa. Esto acelera significativamente el rendimiento de las aplicaciones PHP.
  • Encuestas complejas: Las encuestas muy complejas con muchas condiciones y lógica pueden ralentizar el rendimiento. Optimice la estructura de las encuestas.
  • Retrasos en la red: Si los encuestados están lejos del servidor, el retraso puede afectar la percepción de la velocidad.

Conclusiones y próximos pasos

Esquema: Conclusiones y próximos pasos
Esquema: Conclusiones y próximos pasos

¡Felicidades! Ha instalado y configurado con éxito la potente plataforma LimeSurvey en su propio VPS, asegurando el control total sobre los datos, la seguridad y la funcionalidad. Ha dominado los aspectos clave de la implementación de aplicaciones web: desde la preparación del servidor y la instalación del software básico hasta la configuración de HTTPS y la copia de seguridad automatizada. Ahora está listo para crear encuestas profesionales y recopilar información valiosa.

Para el desarrollo posterior de su plataforma LimeSurvey, considere los siguientes pasos:

  • Exploración de funciones avanzadas de LimeSurvey: Familiarícese con las capacidades de lógica de ramificación, evaluaciones, tokens de acceso, cuotas y varios tipos de preguntas para crear encuestas más complejas e interactivas.
  • Monitoreo del rendimiento: Configure herramientas de monitoreo (por ejemplo, Prometheus + Grafana o Zabbix) para rastrear la carga del servidor, el consumo de recursos y el rendimiento de LimeSurvey, lo que le permitirá responder a tiempo a los problemas y escalar el sistema.
  • Optimización y escalado: Para proyectos de alta carga, considere usar Redis o Memcached para el almacenamiento en caché, así como configurar un clúster de base de datos o balanceo de carga entre varios servidores web.
  • Integración con sistemas externos: Utilice la API de LimeSurvey para integrar con sistemas CRM, plataformas analíticas u otras herramientas de negocio para automatizar procesos y realizar un análisis de datos en profundidad.

¿Te fue útil esta guía?

Tus comentarios nos ayudan a mejorar nuestras guías.

Compartir esta publicación:

Envía esta guía a alguien a quien pueda resultarle útil.

Telegram VKVK WhatsApp Facebook LinkedIn XX

instalación de LimeSurvey en VPS: configuración de encuestas y bases de datos
support_agent
Valebyte Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.