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

Rewrite Rules ..

Estas en el tema de Rewrite Rules .. en el foro de Apache en Foros del Web. Buenas tardes, tengo el siguiente código: Código: Options +FollowSymLinks RewriteEngine on Rewriterule ^login$ login.php [L] Rewriterule ^(.*)$ perfil.php?usuario=$1 La idea es que dominio.com/login -> login.php ...
  #1 (permalink)  
Antiguo 03/10/2011, 10:08
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 18 años
Puntos: 23
Rewrite Rules ..

Buenas tardes,
tengo el siguiente código:

Código:
Options +FollowSymLinks
RewriteEngine on

Rewriterule ^login$ login.php [L]
Rewriterule ^(.*)$ perfil.php?usuario=$1
La idea es que dominio.com/login -> login.php
y que

dominio.com/pepe-> perfi.php?usuario=pepe

El problema lo tengo cuando viene la palabra login, me redirige al perfil del usuario LOGIN y no al login, Por lo que estuve leyendo, la sentencia [L] sirve para indicar qu no se ejecuten mas sentencia luego de esa..

porque no esta funcionando?

Saludos y Gracias!


EDITO:

También tengo problemas con los archivos css imagenes y javascript, me redirecciona todo a perfil.php .. se puede solucionar ésto?

Última edición por McBlink; 03/10/2011 a las 11:47
  #2 (permalink)  
Antiguo 03/10/2011, 14:57
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 4 meses
Puntos: 1567
Respuesta: Rewrite Rules ..

@McBlink
Así funciona

.htaccess

Código Apache:
Ver original
  1. Options +FollowSymLinks
  2. DirectoryIndex index.html
  3. RewriteEngine on
  4. #Urls amigables
  5. RewriteCond %{SCRIPT_FILENAME} !-d  
  6. RewriteCond %{SCRIPT_FILENAME} !-f
  7. RewriteRule ^([^/]*)$ /perfil.php?usuario=$1 [L]
  8.  
  9. Rewriterule ^login$ /login.php

index.html
Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <title>titulo</title>
  5. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  6. <link rel="stylesheet" type="text/css" href="estilo.css" />
  7. </head>
  8. <p>index mr3</p>
  9. <p>
  10.     <a href="/login">login</a><br />
  11.     <a href="/pepe">Pepe</a>
  12.     <a href="/juan">Juan</a>
  13. </p>
  14. </body>
  15. </html>

login.php
Código PHP:
Ver original
  1. <?php
  2. echo "form login";
  3. ?>

perfil.php

Código PHP:
Ver original
  1. <?php
  2. if(isset($_GET['usuario'])){
  3. if(!empty($_GET['usuario'])){
  4. echo $_GET['usuario']; 
  5. }
  6. }
  7. ?>

estilo.css
Código CSS:
Ver original
  1. body {
  2. background-color:#5C7878;
  3. }

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #3 (permalink)  
Antiguo 03/10/2011, 16:50
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 18 años
Puntos: 23
Respuesta: Rewrite Rules ..

Muchisimas gracias emprear.
En sí, el codigo que me pasaste del htaccess no me funcionó.. pero le hice unas modifiaciones y anduvo de 10.

Basicamente, cambie SCRIPT_FILENAME por REQUEST_FILENAME

Gracias!!
  #4 (permalink)  
Antiguo 03/10/2011, 17:07
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 4 meses
Puntos: 1567
Respuesta: Rewrite Rules ..

ok, voy a tomar nota, pero con el código y archivos de ejemplo que puse, me funciona perfectamente, ya voy a analizar cual es la diferencia y como lo afecta.

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.

Etiquetas: php, rewrite, rules, usuarios
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:15.