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

problema con htaccess

Estas en el tema de problema con htaccess en el foro de Apache en Foros del Web. Hola señores, pues antes que nada les mando un cordial saludo, y les comento que ando peleando con mi htaccess... se que es una tonteria ...
  #1 (permalink)  
Antiguo 01/08/2012, 13:16
Avatar de p414  
Fecha de Ingreso: agosto-2009
Ubicación: casi casi casi... a un lado de la cuna...
Mensajes: 575
Antigüedad: 15 años, 3 meses
Puntos: 44
problema con htaccess

Hola señores, pues antes que nada les mando un cordial saludo, y les comento que ando peleando con mi htaccess... se que es una tonteria pero no he logrado hacerlo... podrían darme una mano? se los agradecería muchísimo

este es mi htaccess

Código .htaccess:
Ver original
  1. AddType video/ogg .ogv
  2. AddType video/mp4 .mp4
  3.  
  4.  
  5.  
  6. # Activar RewriteEngine
  7. RewriteEngine on
  8. RewriteBase /
  9. RewriteCond %{SCRIPT_FILENAME} !-d
  10. RewriteCond %{SCRIPT_FILENAME} !-f
  11. #
  12. # Reescribir la URL solicitada por el usuario
  13. #   Entrada:  /IDIOMA/SECCION/SUBSECCION
  14. #   Salida: index.php?idioma=IDIOMA&seccion=SECCION&subseccion=SUBSECCION
  15. RewriteRule ^(\w+)/(\w+)/(\w+)/?$ ^index.php?idioma=$1&seccion=$2&subseccion=$3 [L]

como verán lo que quiero hacer es escribir esto en la url: /IDIOMA/SECCION/SUBSECCION y enviarselo al index de esta forma: index.php?idioma=IDIOMA&seccion=SECCION&subseccion =SUBSECCION pero no logro hacerlo funcionar :S


saludos y gracias de antemano
__________________
Desde hace tiempo estoy esperandote... bienvenido mi pequeño Diego!!!
  #2 (permalink)  
Antiguo 01/08/2012, 21:43
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: problema con htaccess

Tu .htaccess
Código Apache:
Ver original
  1. Options +FollowSymLinks
  2. RewriteEngine on
  3. RewriteCond %{REQUEST_FILENAME} !-f
  4. RewriteCond %{REQUEST_FILENAME} !-d
  5. RewriteRule ^(.*)/(.*)/(.*)/$ /index.php?idioma=$1&sec=$2&sub=$3 [L]

tu html
Código HTML:
Ver original
  1. <a href="ingles/literatura/prosa/">link</a>

Tu php
Código PHP:
Ver original
  1. <?php
  2. extract($_GET);
  3. echo "$idioma - $sec - $sub";
  4. ?>

Así debería funcionar
Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #3 (permalink)  
Antiguo 02/08/2012, 12:44
Avatar de p414  
Fecha de Ingreso: agosto-2009
Ubicación: casi casi casi... a un lado de la cuna...
Mensajes: 575
Antigüedad: 15 años, 3 meses
Puntos: 44
Respuesta: problema con htaccess


muchas gracias emprear, pero no me funciona,

creía que quiza se debía al modulo de apache que quizas no estaba iniciado, pero en mi hosting me dicen que está funcionando de forma correcta... :S si requieres verificar la url del archivo te la mando por mp.... saludos


__________________
Desde hace tiempo estoy esperandote... bienvenido mi pequeño Diego!!!
  #4 (permalink)  
Antiguo 02/08/2012, 13:08
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: problema con htaccess

No puedo darme cuenta si lo tienen habilitado o no.
Pero cree un subdominio en mi server para que lo veas funcionar.
Solo tiene 3 archivos, el htaccess, inicio.php que es donde están los links e index2.php que recoge por get las tres variables

demo
http://mr3.emprear.com

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #5 (permalink)  
Antiguo 02/08/2012, 13:21
Avatar de p414  
Fecha de Ingreso: agosto-2009
Ubicación: casi casi casi... a un lado de la cuna...
Mensajes: 575
Antigüedad: 15 años, 3 meses
Puntos: 44
Respuesta: problema con htaccess

esta es mi url
index.php?idioma=esp&seccion=inicio&subseccion=ini cioLateral

usando el código que me pasaste del htaccess me queda así:

Código Apache:
Ver original
  1. Options FollowSymlinks
  2. RewriteEngine on
  3. RewriteCond %{REQUEST_FILENAME} !-f
  4. RewriteCond %{REQUEST_FILENAME} !-d
  5. RewriteRule ^(.*)/(.*)/(.*)/$ /index.php?idioma=$1&seccion=$2&subseccion=$3 [L]
  6. AddType video/ogg .ogv
  7. AddType video/mp4 .mp4

y la forma como leo las variables en mi archivo php es:

Código PHP:
Ver original
  1. $idioma = $_GET['idioma'];
  2.     $seccion = $_GET['seccion'];
  3.     $subseccion = $_GET['subseccion'];


y la url que envío es así:

esp/inicio/inicioLateral

pero no me funciona :S no logro hacerlo funcionar... si pudieras darme más pistas :S



gracias por tu tiempo :)
__________________
Desde hace tiempo estoy esperandote... bienvenido mi pequeño Diego!!!

Última edición por p414; 02/08/2012 a las 13:24 Razón: falto agradecer
  #6 (permalink)  
Antiguo 02/08/2012, 13:29
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: problema con htaccess

A ver
el htacces esta igual (los AddType no afectan, tampoco afecta que yo abrevié los nombres de las variables)

El php que recibe, esta bien, yo use extract() para simplificar, pero esto

esp/inicio/inicioLateral

estaría mal, ya que tu expresión regular en rewriterule es
algo/otracosa/otramas/
es decir , termina en barra (recordá que tenés $ al final), por lo que tu link debería ser
<a href="esp/inicio/inicioLateral/">esp/inicio/inicioLateral/</a>

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #7 (permalink)  
Antiguo 03/08/2012, 10:24
Avatar de p414  
Fecha de Ingreso: agosto-2009
Ubicación: casi casi casi... a un lado de la cuna...
Mensajes: 575
Antigüedad: 15 años, 3 meses
Puntos: 44
Respuesta: problema con htaccess

tienes toda la razón con respecto a como estoy empleando mi url y lo del extract, por cuestiones de documentación tengo que usarlo de esa forma :( no soy muy dado a hacer tantas lineas para "descomprimir" las variables empaquetadas...y lo del addtype si se que no afecta en nada al funcionamiento del mismo

pero.... (odio decir eso... )....

hice la correcion en la url, ajuste un poco el .htaccess (creyendo que seguía con algunos errores de sintaxis) y queda de esta forma

Código Apache:
Ver original
  1. Options +FollowSymlinks
  2. RewriteEngine on
  3.  
  4.  
  5.  
  6. RewriteCond %{REQUEST_FILENAME} !-f
  7. RewriteCond %{REQUEST_FILENAME} !-d
  8. RewriteRule ^(.*)/(.*)/(.*)$ index.php?idioma=$1&seccion=$2&subseccion=$3 [L]
  9.  
  10.  
  11.  
  12. AddType video/ogg .ogv
  13. AddType video/mp4 .mp4

ahora pruebo

eng/seccionPrimera/subseccionPrimera

y funciona pero me hace un desbarajuste en toda la pagina, ya recibe las variables, pero al momento de procesarlas la pagina se desbarata :S

te dejo la liga aqui :S
__________________
Desde hace tiempo estoy esperandote... bienvenido mi pequeño Diego!!!
  #8 (permalink)  
Antiguo 03/08/2012, 11:01
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: problema con htaccess

Eso sucede porque estás procesando los estilos con la regla, hay que diferenciarlos, una forma de hacerlo es usando la url absoluta relativa a la raíz del sitio, al ejemplo que te había puesto le agregué un javascript y un css

Código HTML:
Ver original
  1. <link rel="stylesheet" type="text/css" href="/css/estilos.css" media="screen" />
  2. <script type="text/javascript" src="/js/x.js"></script>

observá que puse los vínculos incluyendo la barra al inicio.

Otro detalle, mi ejemplo trabaja con esto
RewriteRule ^(.*)/(.*)/(.*)/$
es decir con la barra al final.
otro detalle, vi tu código y
Código HTML:
Ver original
  1. <a href="?idioma=eng&seccion=corporateVideo">Corporate Video</a>

eso de url amigable no tiene nada y en la regla hay tres variables no 2
@p414, es importante que tengas en cuenta que cuando se realizan este tipo de estructuras, lo ideal es diseñar el sistema antes, no después, para evitar tener que hacer correciones que no se apliquen en forma global

Volvé a ver mi ejemplo
http://mr3.emprear.com/
y revisá el código fuente

SAludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #9 (permalink)  
Antiguo 13/08/2012, 09:36
Avatar de p414  
Fecha de Ingreso: agosto-2009
Ubicación: casi casi casi... a un lado de la cuna...
Mensajes: 575
Antigüedad: 15 años, 3 meses
Puntos: 44
Respuesta: problema con htaccess

hola emprear muchas gracias por tus comentarios, y disculpa la tardanza de mis respuestas pero con la certificacion, el trabajo y la mujer ufff... apenas tengo tiempo para dormir...

estuve analizando lo que pusiste y en verdad te agradezco tus recomendaciones, y aprovecho para comentarte:

1.- lo de las url que ves ahi, es porque mi cliente está urgidiiiiiiiiisimo de ver su sitio, así que tengo que ponerlo de esa forma para que el lo vea bien
2.- tienes razón, tendré que poner las url's directas... espero que con eso termine mi martirio con este sitio....


muchisimas gracias en verdad...

saludos
__________________
Desde hace tiempo estoy esperandote... bienvenido mi pequeño Diego!!!

Etiquetas: htaccess, rewriterules, url-amigables
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:06.