Enrutamiento y URLs
Reglas de Apache, acciones internas y orden de resolución de rutas en Risus Nova.
Cómo funciona el router actual
Risus Nova utiliza mod_rewrite. Las URL públicas se convierten en archivos y parámetros PHP mediante reglas declarativas en .htaccess.
Tipos de reglas
- Portada y paginación.
- Perfiles.
- Publicaciones y categorías.
- Recuperación de contraseña.
- Administración y moderación.
- RSS, sitemap y páginas especiales.
- Endpoints AJAX.
- Reglas genéricas para módulos y acciones.
El orden importa
Apache evalúa las reglas de arriba abajo. Una regla específica debe aparecer antes que una genérica.
Al final existen patrones amplios como:
RewriteRule ^([A-Za-z0-9_-]+)/$ inc/php/$1.php [QSA,L]
RewriteRule ^([A-Za-z0-9_-]+)/([A-Za-z0-9_-]+)$ inc/php/$1.php?action=$2 [QSA,L]Estos patrones facilitan crear módulos, pero también pueden capturar rutas nuevas si se colocan mal.
QSA y L
QSAconserva y combina parámetros de consulta.Ldetiene el procesamiento de reglas cuando hay una coincidencia.
Acciones AJAX
Las peticiones con formato nombre.php se redirigen de forma general a:
inc/php/ajax_files.php?action=nombreajax_files.php actúa como distribuidor de acciones AJAX. Las excepciones con reglas propias deben declararse antes.
Añadir una ruta nueva
- Elige una URL pública estable.
- Decide si debe entrar por
index.phpo por un controlador específico. - Añade una regla concreta antes de las reglas genéricas.
- Valida y convierte a entero los identificadores numéricos.
- Conserva
QSAsolo cuando necesites parámetros adicionales. - Prueba rutas con y sin barra final.
- Comprueba que no colisione con archivos reales o endpoints AJAX.
Siguiente paso
Continúa con Configuración del sistema.