Ver Mensaje Individual
  #1 (permalink)  
Antiguo 20/06/2004, 05:15
Avatar de yuip
yuip
 
Fecha de Ingreso: diciembre-2003
Ubicación: Asturias
Mensajes: 13
Antigüedad: 21 años, 1 mes
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.