Foros del Web » Administración de Sistemas » Apache »

Uso del Mod-ReWrite

Estas en el tema de Uso del Mod-ReWrite en el foro de Apache en Foros del Web. Buenas compañeros: Veréis mi situación. Quiero usar el mod rewrite para reescribir las url dinamicas de mi web construida en php a html. He conseguido ...
  #1 (permalink)  
Antiguo 20/06/2004, 05:15
Avatar de yuip  
Fecha de Ingreso: diciembre-2003
Ubicación: Asturias
Mensajes: 13
Antigüedad: 20 años, 4 meses
Puntos: 0
Uso del Mod-ReWrite

Buenas compañeros:
Veréis mi situación. Quiero usar el mod rewrite para reescribir las url dinamicas de mi web construida en php a html. He conseguido ya reescribirlas, por ejemplo, pasar de index.php?elinks/info&id=253 a elink-253.html, pero al pinchar en el enlace me sale un mensaje de error diciendo que no se puede encontrar dicho documento.
El código que añadí hasta ahora es el siguiente. Al principio del todo en el index.php puse esto:

Código PHP:
<?
    ob_start
();
    function 
replace_for_mod_rewrite(&$s)
    {
        
$urlin = array("'index.php\?elinks/info&id=([0-9]*)'");
        
$urlout = array("elink-\\1.html");
        
$s preg_replace($urlin$urlout$s);
        return 
$s;
    }
?>
Y al final del index.php esto:

Código PHP:
<?
    $contents 
ob_get_contents(); // store buffer in $contents
    
ob_end_clean(); // delete output buffer and stop buffering
    
echo replace_for_mod_rewrite($contents); //display modified buffer to screen
?>
Como podéis ver está sacado del mod para PHP-NUKE. Con ésto tal cual, las url se reescriben perfectamente. Ahora bien, en el archivo .htaccess pongo lo siguiente:

Código:
#Activamos el mod_rewrite
RewriteEngine on

RewriteRule ^elink-([0-9]*).html /index.php?elinks/info&id=$1
Que me parece sirve para si solicitas la url en html te redireccione a la correcta... pero no funciona. Ya he hecho unos cuantos cambios poniendo y quitando cosas, intentando buscar información en google, pero no hay manera no me acaba de salir. Tengo la sensación estar a un paso de lograrlo, pero no acabo de darlo.

Ya os digo, solo falta que cuando pinches en la url ya reescrita, salga la ficha. Esta tarea, pienso yo, es la del .htaccess (corregidme si me equivoco), pero no me sale. Quizás el código esté mal, y en ese caso no se que es...

Venga, gracias anticipadas.

Saludos.
  #2 (permalink)  
Antiguo 20/06/2004, 11:11
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

¿Tu hosting soporta mod_rewrite y .htaccess? Hay servidores (incluso de pago) que no lo tienen activado.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 20/06/2004, 12:07
Avatar de yuip  
Fecha de Ingreso: diciembre-2003
Ubicación: Asturias
Mensajes: 13
Antigüedad: 20 años, 4 meses
Puntos: 0
Hola josemi.
Pues si, el servidor dónde tengo la web si tiene activado el mod_rewrite y el uso de .htaccess, pero ahora que lo dices, las pruebas las hago desde mi PC. Se que activé el mod_rewrite en el apache, pero no hice nada con respecto al .htaccess ¿sabes si hay que activarlo, o si por defecto ya viene activado?

Venga, saludos.
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 09:18.