Instalación · 5 min read · Dec 09, 2025
Cómo instalar InvoicePlane con Nginx en FreeBSD 12

InvoicePlane es una aplicación de facturación gratuita y de código abierto. Este tutorial te mostrará cómo instalar InvoicePlane en un sistema FreeBSD 12.
Requisitos
- Servidor Web (Apache, NGINX). Este tutorial utilizará Nginx.
- MySQL versión 5.5 o superior o la versión equivalente de MariaDB.
- PHP versión 7.0, 7.1 o 7.2 con las siguientes extensiones de PHP instaladas y activadas:
- php-gd
- php-hash
- php-json
- php-mbstring
- php-mcrypt
- php-mysqli
- php-openssl
- php-recode
- php-xmlrpc
- php-zlib
Prerrequisitos
- Un servidor que ejecute FreeBSD 12.
- Un usuario no root con privilegios de sudo.
Pasos iniciales
Verifica tu versión de FreeBSD:
uname -ro
# FreeBSD 12.1-RELEASEConfigura la zona horaria:
tzsetupActualiza los paquetes de tu sistema operativo (software). Este es un primer paso importante porque asegura que tengas las últimas actualizaciones y correcciones de seguridad para los paquetes de software predeterminados de tu sistema operativo:
freebsd-update fetch install
pkg update && pkg upgrade -yInstala algunos paquetes esenciales que son necesarios para la administración básica del sistema operativo FreeBSD 12.0:
pkg install -y sudo vim unzip wget bashPaso 1 - Instalar PHP y las extensiones de PHP requeridas
La aplicación web InvoicePlane requiere PHP versión 7.0 o superior.
Instala PHP, así como las extensiones de PHP necesarias:
sudo pkg install -y php72 php72-ctype php72-curl php72-dom php72-hash php72-iconv php72-gd php72-json php72-mbstring php72-openssl php72-session php72-simplexml php72-xml php72-zip php72-zlib php72-pdo php72-pdo_mysql php72-mysqli php72-filter php72-ftp php72-tokenizer php72-calendar php72-pecl-APCu php72-opcacheVerifica la versión de PHP:
php --version
# PHP 7.2.7 (cli) (built: Jul 25 2019 01:28:53) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.3.7, Copyright (c) 1998-2018 Zend Technologies
# with Zend OPcache v7.3.7, Copyright (c) 1999-2018, by Zend TechnologiesHabilita e inicia el servicio PHP-FPM:
sudo sysrc php_fpm_enable=yes
sudo service php-fpm startPaso 2 - Instalar MySQL
Instala el servidor de base de datos MySQL:
sudo pkg install -y mysql57-serverVerifica la versión de MySQL:
mysql --version
# mysql Ver 14.14 Distrib 5.7.26, for FreeBSD12.0 (amd64) using EditLine wrapperHabilita e inicia el servicio MySQL:
sudo sysrc mysql_enable="yes"
sudo service mysql-server startEjecuta el script mysql_secure_installation para mejorar la seguridad de MySQL y establecer la contraseña para el usuario root de MySQL:
sudo mysql_secure_installationResponde a cada una de las preguntas:
¿Te gustaría configurar el plugin VALIDATE PASSWORD? N
Nueva contraseña: tu_contraseña_segura
Vuelve a ingresar la nueva contraseña: tu_contraseña_segura
¿Eliminar usuarios anónimos? [Y/n] Y
¿Deshabilitar el inicio de sesión remoto de root? [Y/n] Y
¿Eliminar la base de datos de prueba y el acceso a ella? [Y/n] Y
¿Recargar las tablas de privilegios ahora? [Y/n] YConéctate a la consola de MySQL como el usuario root:
sudo mysql -u root -p
# Ingresa la contraseña
Crea una base de datos MySQL vacía y un usuario para Matomo y recuerda las credenciales:
CREATE DATABASE dbname;
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;Sal de MySQL:
exitReemplaza dbname, username y password con tus propios nombres.
Paso 3 - Instalar acme.sh y obtener el certificado Let’s Encrypt (opcional)
Asegurar tu sitio web con HTTPS no es necesario, pero es una buena práctica asegurar el tráfico de tu sitio. Para obtener un certificado TLS de Let’s Encrypt utilizaremos el cliente Acme.sh. Acme.sh es un software de shell UNIX puro para obtener certificados TLS de Let’s Encrypt sin dependencias.
Descarga e instala Acme.sh:
sudo pkg install -y acme.shVerifica la versión de Acme.sh:
acme.sh --version
# v2.8.2Obtén certificados RSA y ECC/ECDSA para tu dominio/nombre de host:
# RSA
sudo acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --keylength 2048
# ECDSA
sudo acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --keylength ec-256Después de ejecutar los comandos anteriores, tus certificados y claves estarán en:
- Para RSA: directorio
/etc/letsencrypt/example.com. - Para ECC/ECDSA: directorio
/etc/letsencrypt/example.com_ecc.
Paso 3 - Instalar NGINX
Instala el servidor web NGINX:
sudo pkg install -y nginxVerifica la versión de NGINX:
nginx -v
# nginx version: nginx/1.14.2Inicia y habilita el servicio NGINX:
sudo sysrc nginx_enable=yes
sudo service nginx startConfigura Nginx para InvoicePlane ejecutando:
sudo vim /usr/local/etc/nginx/invoiceplane.confY llena el archivo con la siguiente configuración:
server {
listen 80;
listen [::]:80;
server_name example.com;
root /usr/local/www/invoiceplane;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~* \.php$ {
fastcgi_pass 127.0.0.1:9000;
include fastcgi_params;
fastcgi_index index.php5;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}Prueba la configuración de NGINX:
sudo nginx -tRecarga NGINX:
sudo service nginx restartPaso 4 - Instalar InvoicePlane
Descarga la última versión estable de InvoicePlane y extrae el archivo:
sudo mkdir -p /usr/local/www
cd /usr/local/www
sudo curl -O -J -L https://invoiceplane.com/download/v1.5.9
sudo unzip v1.5.9.zip
sudo rm v1.5.9.zip
sudo mv ip invoiceplaneNavega al directorio /var/www/invoiceplane:
cd /usr/local/www/invoiceplaneHaz una copia del archivo ipconfig.php.example y renombra la copia a ipconfig.php:
sudo cp ipconfig.php.example ipconfig.phpAbre el archivo ipconfig.php y agrega tu URL en él:
sudo vim ipconfig.php
# Algo como esto
IP_URL=http://example.comCambia la propiedad del directorio /usr/local/www/invoiceplane a www:
sudo chown -R www:www /usr/local/www/invoiceplaneEjecuta sudo vim /etc/php.ini y establece date.timezone:
date.timezone = Region/CiudadReinicia el servicio PHP-FPM:
sudo service php-fpm restartEjecuta el instalador de InvoicePlane desde tu navegador web y sigue las instrucciones:
http://example.com/index.php/setupUna vez que la instalación haya finalizado, puedes iniciar sesión en InvoicePlane utilizando la dirección de correo electrónico y la contraseña que elegiste durante la instalación.
Si deseas asegurar tu instalación, puedes deshabilitar la configuración. Para hacerlo, reemplaza la línea DISABLE_SETUP=false con DISABLE_SETUP=true en tu archivo ipconfig.php.
Paso 5 - Completar la configuración de InvoicePlane
InvoicePlane ya está instalado y configurado, es hora de acceder a su asistente de instalación web.
Abre tu navegador web y escribe la URL http://example.com. Serás redirigido a la siguiente página:

Ahora, haz clic en el botón Configuración. Deberías ver la siguiente página:

A continuación, elige el idioma y haz clic en el botón Continuar. Deberías ver la siguiente página:

A continuación, haz clic en el botón Continuar. Deberías ver la siguiente página:

Aquí, proporciona los detalles de tu base de datos y haz clic en el botón Intentar de nuevo. Deberías ver la siguiente página:

Ahora, haz clic en el botón Continuar. Deberías ver la siguiente página:

Ahora, haz clic en el botón Continuar. Deberías ver la siguiente página:

Ahora, proporciona todos los detalles requeridos, luego haz clic en el botón Continuar. Una vez que la instalación esté completa, deberías ver la siguiente página:

Ahora, haz clic en el botón Iniciar sesión para acceder a la administración de InvoicePlane.
Enlaces
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.