RewriteEngine On

# Forzar el PHP ea-php82
<IfModule mime_module>
  AddHandler application/x-httpd-ea-php82 .php .php8 .phtml
</IfModule>

# Configuración de sesión PHP
<IfModule mod_php.c>
  php_value session.gc_maxlifetime 900
  php_value session.cookie_lifetime 0
</IfModule>

# Habilitar el seguimiento de enlaces simbólicos
Options +FollowSymLinks

# Permitir acceso directo a archivos existentes
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]

# Redirigir la raíz al archivo inicio.php sin redirección externa
RewriteCond %{REQUEST_URI} ^/$
RewriteRule ^$ inicio.php [L]

# Redirigir /config y cualquier variante (con o sin barra final) a /inicio.php
RewriteCond %{REQUEST_URI} ^/config(/|$)
RewriteRule ^ inicio.php [L]

# Redirigir /instalacion hacia /instalacion/instalador.php
RewriteRule ^instalacion/?$ instalacion/instalador.php [L]

# Redirigir /admin hacia /admin/admin.php
RewriteRule ^admin/?$ admin/admin.php [L]

# Redirigir /inicio a inicio.php
RewriteRule ^inicio$ inicio.php [L]

# Ocultar la extensión .php en la barra de exploración
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^([^\.]+)$ $1.php [L]

# Manejar errores 404 personalizados
ErrorDocument 404 /inicio.php

# Deshabilitar listado de directorios para la mayoría de carpetas
Options -Indexes

# Permitir acceso a la carpeta admin
<Directory "/admin">
    Options +Indexes +FollowSymLinks +ExecCGI
    AllowOverride All
    Require all granted
</Directory>
