English | Français | Deutsch | Architecture Diagrams
Sistema completo para administrar dominios locales, certificados SSL y configuración de Apache en macOS de forma nativa (sin MAMP Pro).
- macOS (Ventura o superior)
- Homebrew instalado
- PHP 8.4 (instalado)
- MySQL 8.4 (instalado)
- Apache 2.4 (nativo de macOS)
# Agregar PHP 8.4 y MySQL al PATH
echo 'export PATH="/opt/homebrew/opt/php@8.4/bin:$PATH"' >> ~/.zshrc
echo 'export PATH="/opt/homebrew/opt/php@8.4/sbin:$PATH"' >> ~/.zshrc
echo 'export PATH="/opt/homebrew/opt/mysql@8.4/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc# Iniciar PHP-FPM
brew services start php@8.4
# Iniciar MySQL
brew services start mysql@8.4
# Configurar MySQL (opcional - establecer contraseña root)
mysql_secure_installation# Dar permisos de ejecución a los scripts
chmod +x ~/localhost-manager/scripts/*.sh
# Generar todos los certificados SSL
bash ~/localhost-manager/scripts/generate-certificates.sh- Abre tu navegador
- Ve a:
http://localhost/manager - Usa la interfaz para:
- Generar certificados SSL
- Crear configuración de Apache
- Generar archivo /etc/hosts
- Administrar dominios y alias
La interfaz muestra:
- Información del sistema: Versiones de PHP, Apache y MySQL
- Acciones rápidas: Botones para generar certificados, configuración, etc.
- Lista de dominios: Tabla con todos los dominios configurados
- Click en "Generar Todos los Certificados"
- O genera certificados individuales con el botón "Cert" en cada fila
- Click en "Generar Configuración Apache"
- Esto crea el archivo
~/localhost-manager/conf/vhosts.conf
- Click en "Generar /etc/hosts"
- Ejecuta el comando que aparece:
sudo bash ~/localhost-manager/scripts/update-hosts.shDespués de generar la configuración, ejecuta:
sudo bash ~/localhost-manager/scripts/install.shEste script:
- Configura PHP 8.4 en Apache
- Habilita módulos necesarios (SSL, rewrite, etc.)
- Copia certificados a
/etc/apache2/ssl - Aplica configuración de virtual hosts
- Reinicia Apache
- En la interfaz web, ve a la sección "Agregar Nuevo Dominio"
- Completa los campos:
- Dominio:
midominio.local - Alias (opcional):
www.midominio.local - Document Root:
/Users/mario/Sites/localhost/midominio.local
- Dominio:
- Click en "Agregar Dominio"
- Genera el certificado SSL para el dominio
- Regenera la configuración de Apache
- Actualiza /etc/hosts
- Ejecuta el script de instalación
~/localhost-manager/
├── certs/ # Certificados SSL generados
├── conf/ # Archivos de configuración
│ ├── hosts.json # Base de datos de dominios
│ ├── hosts.txt # Entradas para /etc/hosts
│ └── vhosts.conf # Configuración de Apache
├── scripts/ # Scripts de administración
│ ├── generate-certificates.sh
│ ├── generate-vhosts-config.sh
│ ├── install.sh
│ └── update-hosts.sh
└── README.md
/Users/mario/Sites/localhost/
└── manager/ # Interfaz web
└── index.php
Para que los servicios se inicien automáticamente al arrancar el sistema:
# PHP-FPM
brew services start php@8.4
# MySQL
brew services start mysql@8.4
# Apache (macOS)
sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plistPara detener los servicios:
brew services stop php@8.4
brew services stop mysql@8.4
sudo apachectl stop# Iniciar Apache
sudo apachectl start
# Detener Apache
sudo apachectl stop
# Reiniciar Apache
sudo apachectl restart
# Verificar configuración
sudo apachectl configtest
# Ver módulos cargados
sudo apachectl -M# Ver versión
php --version
# Ver configuración
php --ini
# Editar php.ini
nano /opt/homebrew/etc/php/8.4/php.ini# Conectar a MySQL
mysql -u root -p
# Ver bases de datos
mysql -u root -p -e "SHOW DATABASES;"
# Estado del servicio
brew services list | grep mysqlLos certificados autofirmados son válidos por 10 años (3650 días).
Para confiar en un certificado en macOS:
- Abre Keychain Access
- Arrastra el archivo
.crtdesde~/localhost-manager/certs/ - Doble click en el certificado
- Expande "Trust"
- Selecciona "Always Trust"
# Ver error log
tail -f /var/log/apache2/error_log
# Verificar configuración
sudo apachectl configtest# Verificar que el módulo está cargado
sudo apachectl -M | grep php
# Verificar php.ini
php --iniAgrega el certificado a Keychain Access (ver sección Certificados SSL).
# Ver qué proceso usa el puerto
sudo lsof -i :80
sudo lsof -i :443
# Detener MAMP si está corriendo- Gratis y de código abierto
- Configuración nativa de macOS
- Mejor rendimiento
- Fácil actualización de componentes
- Control total de la configuración
- Interfaz web moderna para administración
- Generación automática de certificados SSL
- Soporte para alias de dominios
Para problemas o sugerencias, revisa los logs:
- Apache:
/var/log/apache2/error_log - PHP:
/opt/homebrew/var/log/php-fpm.log - MySQL:
/opt/homebrew/var/mysql/*.err
Autor: Localhost Manager Versión: 1.0.0 Fecha: Noviembre 2025