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

mod_rewrite no me cambia la direccion

Estas en el tema de mod_rewrite no me cambia la direccion en el foro de Apache en Foros del Web. LLevo dias probando cosas y no hay forma de que funcione, lo que necesito se supone que es sencillo pero no lo consigo hacer. Quiero ...
  #1 (permalink)  
Antiguo 01/03/2010, 08:33
 
Fecha de Ingreso: noviembre-2003
Ubicación: A Coruña
Mensajes: 89
Antigüedad: 21 años
Puntos: 0
mod_rewrite no me cambia la direccion

LLevo dias probando cosas y no hay forma de que funcione, lo que necesito se supone que es sencillo pero no lo consigo hacer. Quiero convertir uan direccion:

http://miweb.com/index.php?modulo=inicio

a

http://miweb.com/inicio.html

Os dejo el ultimo .htaccess que probe, porque llevo dias probando variaciones.

Código:
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^(.*)\.html$ /index.php?modulo=$1
A ver si me podeis ayudar, porque no hay forma.Saludos y Gracias
  #2 (permalink)  
Antiguo 01/03/2010, 16:01
Avatar de ferny
Il capo della mafia
 
Fecha de Ingreso: febrero-2002
Ubicación: Al final del cable
Mensajes: 10.080
Antigüedad: 22 años, 9 meses
Puntos: 55
Respuesta: mod_rewrite no me cambia la direccion

¿Tú quieres cambiar
http://miweb.com/index.php?modulo=inicio
a
http://miweb.com/inicio.html
con htaccess?

A ver, htaccess lo que hace es que cuando en el navegador pones
http://miweb.com/inicio.html
entonces internamente el servidor interpreta
http://miweb.com/index.php?modulo=inicio
y eso de forma transparente para el usuario (no tiene por qué enterarse de esa conversión)

Pero si te refieres a cambiar los enlaces que ya haya en tu página, eso es a mano... htaccess no sirve para eso. Primero en el código de tu web pones los enlaces con los .html, y luego el htaccess hace que los .html se interpreten correctamente.

Espero no haber sido poco claro
__________________
www.mundodivx.com || www.mundodivx.org

Pon tu mano en un horno caliente durante un minuto y te parecerá una hora.
Siéntate junto a una chica preciosa durante una hora y te parecerá un minuto.
Eso es la relatividad.
  #3 (permalink)  
Antiguo 04/03/2010, 06:46
 
Fecha de Ingreso: noviembre-2003
Ubicación: A Coruña
Mensajes: 89
Antigüedad: 21 años
Puntos: 0
Respuesta: mod_rewrite no me cambia la direccion

Perdona por no responder antes, es que no me llegan los mails de respuestas. Yo lo que quiero es que las direcciones que aparecen ahora mismo en el navegador como http://miweb.com/index.php?modulo=inicio se vean asi http://miweb.com/inicio.html.

Me puedes comentar mas por menorizado que tendria que hacer?. Los archivos de la web como inicio son todos .php, los tendria que cambiar a html?, es que si los cambio no me funcionaria el codigo php de la web.Saludos
  #4 (permalink)  
Antiguo 04/03/2010, 07:39
Avatar de ferny
Il capo della mafia
 
Fecha de Ingreso: febrero-2002
Ubicación: Al final del cable
Mensajes: 10.080
Antigüedad: 22 años, 9 meses
Puntos: 55
Respuesta: mod_rewrite no me cambia la direccion

Me refiero a que si en el código de tu web tienes puestos ahora los enlaces así:

<a href="http://miweb.com/index.php?modulo=inicio">Enlace</a>

Entonces los tienes que cambiar, a mano, a algo así:

<a href="http://miweb.com/inicio.html">Enlace</a>

De esta forma, al pinchar cualquier enlace de tu web, irá a una página .html

Como esa página no existe (siguen siendo archivos .php), tienes que usar el .htaccess que pusiste para que el servidor interprete la página correctamente.

__________________
www.mundodivx.com || www.mundodivx.org

Pon tu mano en un horno caliente durante un minuto y te parecerá una hora.
Siéntate junto a una chica preciosa durante una hora y te parecerá un minuto.
Eso es la relatividad.
  #5 (permalink)  
Antiguo 04/03/2010, 07:48
 
Fecha de Ingreso: noviembre-2003
Ubicación: A Coruña
Mensajes: 89
Antigüedad: 21 años
Puntos: 0
Respuesta: mod_rewrite no me cambia la direccion

Vale creo que me quedo claro, lo probaré a ver si funciona bien.Gracias
  #6 (permalink)  
Antiguo 04/03/2010, 18:25
 
Fecha de Ingreso: noviembre-2003
Ubicación: A Coruña
Mensajes: 89
Antigüedad: 21 años
Puntos: 0
Respuesta: mod_rewrite no me cambia la direccion

Lo probe y funciona, pero tengo un problema. El codigo php que uso para cargar los modulos no funciona bien si activo el .htaccess.

Código:
<? 
if (!empty($_GET['modulo']))
if (file_exists('modulos/'.$_GET['modulo'].'.php')) include_once('modulos/'.$_GET['modulo'].'.php');
else echo ("La seccion a la que intentas acceder no existe. Verifica la direccion.<a href='./'> Volver al Inicio</a>");
else include("modulos/inicio.php");	
?>
Carga bien todos los modulos, menos el de inicio.php, que se tiene que cargar por defecto al entrar en la web, sin embargo si le doy a un boton que esta la direccion como inicio.html si carga, pero el del codigo no, sale le mensaje de error de "La seccion a la que intentas acceder no existe". Si quito el htaccess funciona todo bien, asiq eu tiene que ser un efecto del codigo del htaccess.Saludos
  #7 (permalink)  
Antiguo 05/03/2010, 00:00
Avatar de ferny
Il capo della mafia
 
Fecha de Ingreso: febrero-2002
Ubicación: Al final del cable
Mensajes: 10.080
Antigüedad: 22 años, 9 meses
Puntos: 55
Respuesta: mod_rewrite no me cambia la direccion

¿Puedes poner la URL exacta del enlace desde el que accedes? Es decir, a qué dirección accedes cuando no funciona (por ej.: http://www.tuweb.com/loquesea.html). Sólo así se puede mirar lo que interpreta el .htaccess y encontrar el fallo
__________________
www.mundodivx.com || www.mundodivx.org

Pon tu mano en un horno caliente durante un minuto y te parecerá una hora.
Siéntate junto a una chica preciosa durante una hora y te parecerá un minuto.
Eso es la relatividad.
  #8 (permalink)  
Antiguo 05/03/2010, 02:20
 
Fecha de Ingreso: noviembre-2003
Ubicación: A Coruña
Mensajes: 89
Antigüedad: 21 años
Puntos: 0
Respuesta: mod_rewrite no me cambia la direccion

Cuando no funciona es cuando entro al index, http://www.tuweb.com/ en ese momento deberia cargarse atraves del codigo php el inicio.php en un recuadro central, pero sale el mensaje de error que mencione antes, sin embargo si entro atraves de http://www.tuweb.com/inicio.html si que carga bien la pagina.Saludos
  #9 (permalink)  
Antiguo 05/03/2010, 02:44
Avatar de ferny
Il capo della mafia
 
Fecha de Ingreso: febrero-2002
Ubicación: Al final del cable
Mensajes: 10.080
Antigüedad: 22 años, 9 meses
Puntos: 55
Respuesta: mod_rewrite no me cambia la direccion

Hola

¿Tienes acceso al archivo httpd.conf de configuración de Apache? Creo saber lo que está pasando. Verifícalo, si esto funciona es que el DirectoryIndex de apache da mayor prioridad a un index.html que a un index.php, y ahí es cuando entra el rewrite a joder...

Código PHP:
<? 
if (!empty($_GET['modulo']))
{
  if (
$_GET['modulo'] == 'index'// Reescribimos el valor para el caso problemático
    
$_GET['modulo'] = 'inicio';
  if (
file_exists('modulos/'.$_GET['modulo'].'.php')) 
    include_once(
'modulos/'.$_GET['modulo'].'.php');
  else
    echo (
"La seccion a la que intentas acceder no existe. Verifica la direccion.<a href='./'> Volver al Inicio</a>");
}
else
{
  include(
"modulos/inicio.php");
}
?>
__________________
www.mundodivx.com || www.mundodivx.org

Pon tu mano en un horno caliente durante un minuto y te parecerá una hora.
Siéntate junto a una chica preciosa durante una hora y te parecerá un minuto.
Eso es la relatividad.
  #10 (permalink)  
Antiguo 05/03/2010, 04:08
 
Fecha de Ingreso: noviembre-2003
Ubicación: A Coruña
Mensajes: 89
Antigüedad: 21 años
Puntos: 0
Respuesta: mod_rewrite no me cambia la direccion

Si, era eso, muchisimas gracias ya funciona todo bien, solo tuve que cambiar una pagina que tenia en html a htm para que tirase bien.Saludos y gracias de nuevo

Etiquetas: direccion, cambios
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 01:09.