Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/IvBanzaga/Refugio/llms.txt

Use this file to discover all available pages before exploring further.

Overview

Refugio is a PHP-based web application that requires a standard LAMP/LEMP stack. This page outlines the minimum and recommended requirements for running the system in both development and production environments.

Minimum Requirements

Server Requirements

PHP Version

Minimum: PHP 7.4
Recommended: PHP 8.0 or higher

Web Server

Apache 2.4+ with mod_rewrite
or Nginx 1.18+

Database

PostgreSQL 12+ or MySQL 5.7+ / MariaDB 10.3+

Memory

Minimum: 512 MB RAM
Recommended: 1 GB+ RAM

PHP Extensions

The following PHP extensions are required:
# Core extensions
php-pdo
php-pgsql    # For PostgreSQL
php-mysql    # For MySQL
php-mbstring
php-json
php-session

# Security extensions
php-openssl
php-curl

Operating System

  • Windows Server 2016 or newer
  • XAMPP 8.0+ or WAMP Server
  • Not recommended for production
  • macOS 10.15 (Catalina) or newer
  • Homebrew PHP installation
  • Suitable for development only

Small Deployment (1-50 users)

ResourceSpecification
CPU2 cores @ 2.0 GHz
RAM2 GB
Storage20 GB SSD
Bandwidth100 Mbps

Medium Deployment (50-200 users)

ResourceSpecification
CPU4 cores @ 2.5 GHz
RAM4 GB
Storage40 GB SSD
Bandwidth500 Mbps

Large Deployment (200+ users)

ResourceSpecification
CPU8+ cores @ 3.0 GHz
RAM8+ GB
Storage100+ GB SSD
Bandwidth1 Gbps

Database Requirements

PostgreSQL Specifications

Version: 12.0 or higher
Storage: Minimum 5 GB for database
Extensions: None required (uses standard SQL)
Recommended Settings:
max_connections = 100
shared_buffers = 256MB
effective_cache_size = 1GB
maintenance_work_mem = 64MB
checkpoint_completion_target = 0.9
wal_buffers = 16MB
default_statistics_target = 100

Browser Support

The Refugio web interface supports the following browsers:
Modern browsers (last 2 versions)
Chrome/Chromium 90+
Firefox 88+
Safari 14+
Edge 90+
Mobile browsers (iOS Safari, Chrome Mobile)
Internet Explorer is not supported. Users must upgrade to a modern browser.

Network Requirements

Ports

PortProtocolPurpose
80HTTPWeb server (redirect to HTTPS)
443HTTPSSecure web access
5432TCPPostgreSQL (if remote)
3306TCPMySQL (if remote)
22SSHServer administration

Firewall Rules

# Allow HTTP and HTTPS
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

# Allow SSH (with rate limiting)
sudo ufw limit 22/tcp

# Enable firewall
sudo ufw enable

SSL Certificate

HTTPS is required for production deployments to protect user credentials and session data.
Options:
  • Let’s Encrypt (free, automated)
  • Commercial SSL certificate
  • Cloudflare SSL (if using Cloudflare)

Development Environment

For local development, simpler requirements apply:
1

Install PHP

# Ubuntu/Debian
sudo apt install php8.1 php8.1-pdo php8.1-pgsql

# macOS (Homebrew)
brew install php@8.1
2

Install Database

# PostgreSQL
sudo apt install postgresql postgresql-contrib

# Or use Docker
docker run -d -p 5432:5432 -e POSTGRES_PASSWORD=refugio postgres:14
3

Start Dev Server

php -S localhost:8000

Verification Script

Use the included verification script to check your environment:
php verificar_mysql.php
This script checks:
  • PHP version and extensions
  • Database connectivity
  • File permissions
  • Session support

Next Steps

Database Setup

Configure your database and import the schema

Configuration

Configure application settings

Build docs developers (and LLMs) love