Foros del Web » Administración de Sistemas » Software para Servers »

Duda optimización de mod_rewrite

Estas en el tema de Duda optimización de mod_rewrite en el foro de Software para Servers en Foros del Web. Hola Tengo el siguiente ejemplo de .httaccess en un sitio, el ejemplo funciona bien pero quiero saber si hay una mejor forma de hacerlo con ...
  #1 (permalink)  
Antiguo 02/04/2014, 00:26
Avatar de fullmental  
Fecha de Ingreso: octubre-2004
Ubicación: México DF, Xochimilco
Mensajes: 593
Antigüedad: 19 años, 6 meses
Puntos: 3
Duda optimización de mod_rewrite

Hola
Tengo el siguiente ejemplo de .httaccess en un sitio, el ejemplo funciona bien pero quiero saber si hay una mejor forma de hacerlo con expresiones regulares.


1er objetivo es que al entrar a cualquier dirección sin parametros ejemplo
Sitio.com/index tome el contenido de su respectivo archivo con extensión php => Sitio.com/index.php

2do objetivo, en caso de las páginas detalles y editar estas pueden traer una variable vía GET que en este caso es ID, entonces al entrar en
sitio.com/detalles/2 tome el contenido de sitio.com/detalles.php?id=2

Código:
RewriteEngine On 

RewriteRule    ^index/?$    index.php    [NC]
RewriteRule    ^pagina-dos/?$    padina-dos.php    [NC]
RewriteRule    ^pagina-tres/?$    pagina-tres.php    [NC]
RewriteRule    ^detalles/([0-9]+)/?$    detalles.php?ID=$1    [NC]
RewriteRule    ^editar/([0-9]+)/?$    editar.php?ID=$1    [NC,L]
He conseguido hacer que todas las extensiones se escondan de manera genéricas, sin embargo esto me genera un error con las otras reglas en detalles y editar.

Agradecería mucho su ayuda.

Saludos.
  #2 (permalink)  
Antiguo 02/04/2014, 08:55
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 10 años, 7 meses
Puntos: 578
Respuesta: Duda optimización de mod_rewrite

Pon las reglas de detalle y editar al principio y utiliza la bandera [L], se supone que así no genera conflicto.

Etiquetas: apache, htaccess, optimización, php, servidores-web
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:55.