Foros del Web » Programando para Internet » PHP »

Ocultar URL

Estas en el tema de Ocultar URL en el foro de PHP en Foros del Web. hola amigos, tengo unas carpetas en mi hosting de esta manera Contenedor1 subcontenido1 archivo1 archivo2 archivo3 subcontenido2 archivo1 archivo2 subcontenido3 archivo1 archivo2 subcontenido4 archivo1 archivo2 ...
  #1 (permalink)  
Antiguo 18/10/2010, 07:42
Avatar de el_tigre  
Fecha de Ingreso: febrero-2006
Ubicación: Perú
Mensajes: 1.044
Antigüedad: 18 años, 9 meses
Puntos: 8
De acuerdo Ocultar URL

hola amigos, tengo unas carpetas en mi hosting de esta manera

Contenedor1
subcontenido1
archivo1
archivo2
archivo3
subcontenido2
archivo1
archivo2
subcontenido3
archivo1
archivo2
subcontenido4
archivo1
archivo2
archivo3

Contenedor2
subcontenido1
archivo1
archivo2
archivo3
subcontenido2
archivo1
archivo2
subcontenido3
archivo1
archivo2
subcontenido4
archivo1
archivo2
archivo3

Ahora, tengo un script PHP que entra a los "subcontenidos" y me carga los archivos que contiene ese Subcontenido

Código PHP:
$directory "my_archive"
Para mostrar esos "archivos" en mi web, yo uso

http://miweb.com/Contenedor1/1.php?archiv=subcontenido1
http://miweb.com/Contenedor1/1.php?archiv=subcontenido2
http://miweb.com/Contenedor2/1.php?archiv=subcontenido1............. Sucesivamente

"1.php" contiene un contenedor donde mostraré los archivos contenidos en los Subcontenidos, pero ahora quiero proteger los Contenedores.... es decir, no se debe ver la palabra "Contenedor1", "Contenedor2", etc ¿saben de alguna forma de hacerlo?

Espero q puedan haberlo entendido y espero vuestra ayuda.

Muchas gracias
  #2 (permalink)  
Antiguo 18/10/2010, 09:57
Avatar de gogupe  
Fecha de Ingreso: octubre-2006
Ubicación: Mallorca
Mensajes: 897
Antigüedad: 18 años
Puntos: 32
Respuesta: Ocultar URL

Hola para ello tienes que usar las URL's amigagles o algunos tambien le llama ocultar las url's.

Para ello te tienes que crear un fichero en la raiz llamado .htaccess

Fijate que lleva un punto delante, y dentro de él tienes que ir escribiendo las reglas.

Primero llamas al procedimiento:

Código:
RewriteEngine On
RewriteBase /
Y luego vas escribiendo las reglas.

Código:
RewriteRule ^loquesa/loquequiera_(.*).html        Contenedor1/1.php?archiv=$1
Te explico:

Lo que viene detras de rewriterule es como se va a llamar la nueva URL, puedes llamarlo como te de la gana.
Donde pone (.*) es donde irá el valor de archiv

De modo que cuando crees el link tienes que hacerlo de tal manera:
http://lmiweb.com/loquesa/loquequier...ontenido1.html

Si tienes dudas postea.

Saludos
  #3 (permalink)  
Antiguo 18/10/2010, 11:40
Avatar de el_tigre  
Fecha de Ingreso: febrero-2006
Ubicación: Perú
Mensajes: 1.044
Antigüedad: 18 años, 9 meses
Puntos: 8
Respuesta: Ocultar URL

Hola, gracias por tu valiosa ayuda, no me ha funcionado bien que digamos, de seguro algo está mal en mi aplicación.

hice esto

Código PHP:
RewriteRule ^Garabatos1/   Contenedor1
RewriteRule 
^Garabatos2/   Contenedor2
...............sucesivamente 
y cuando quise llamarlo, no me funciona, lo que deseo es proteger sólamente los Contenedores

Código PHP:
http://www.miweb.com/Garabatos1/1.php?archiv=SubContenido 
  #4 (permalink)  
Antiguo 18/10/2010, 15:33
Avatar de el_tigre  
Fecha de Ingreso: febrero-2006
Ubicación: Perú
Mensajes: 1.044
Antigüedad: 18 años, 9 meses
Puntos: 8
De acuerdo Respuesta: Ocultar URL

Aunque lo ideal es enconder completamente ese contenedor de esta madera

Código PHP:
http://www.miweb.com/1.php?archiv=SubContenido 
intenté de esta manera

Código PHP:
RewriteRule ^Contenedor1/(.+)$ http://www.midominio.com/$1 [R=301,L]
RewriteRule ^Contenedor2/(.+)$ http://www.midominio.com/$1 [R=301,L] 
Y tampoco ha funcionado.....

Última edición por el_tigre; 18/10/2010 a las 16:08
  #5 (permalink)  
Antiguo 19/10/2010, 01:29
Avatar de gogupe  
Fecha de Ingreso: octubre-2006
Ubicación: Mallorca
Mensajes: 897
Antigüedad: 18 años
Puntos: 32
Respuesta: Ocultar URL

Hola me parece que estás liando sobre las url's amigables.

Yo es que no sea un experto, pero creo que te estás equivocando a la hora de plantear las reglas.

A ver:

Si quieres modificar este link
http://www.miweb.com/1.php?archiv=SubContenido

tienes que poner en el htaccess de la siguiente forma:

RewriteRule ^contenedor1/(.*) 1.php?archiv=$1

Fíjate que lo que va entre paréntesis es un * y no un +, entre (.*) y 1.php hay una tabulación.
La palabra contenedor1, la puede modificar y poner lo que quieras, pero la regla tiene que ser de esta manera, la segunda parte es inmodificable.

Luego cuando estés armando la pagina web, en el código php tiene que hacer el link de la siguiente forma:
http://www.miweb.com/contenedor1/SubContenido

La variable subcontenido es lo que va a recoger por GET, o sea que si pones $valor=$_GET['archiv'], $valor va a valer lo que le pongas en el link.

Si en el regla, insertas otro (.*), en la otra parte de la regla, recogerás el valor con $2 y asi sucesivamente.

Leete sobre las url's amigables, hay mucha información al respecto.

Por cierto, si no te funciona, hay que modificar un valor en el php.ini, que ahora mismo no recuerdo cual es.

Mira, échale un vistazo a esto:
http://www.tufuncion.com/urls_amigables
a ver si te aclaras mejor.

Saludos y suerte

Etiquetas: url
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 22:03.