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;
}
?>
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
?>
Código:
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.#Activamos el mod_rewrite RewriteEngine on RewriteRule ^elink-([0-9]*).html /index.php?elinks/info&id=$1
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.