Foros del Web » Programando para Internet » PHP »

Mejorando la url

Estas en el tema de Mejorando la url en el foro de PHP en Foros del Web. Hola quiero hacer algo q es muy interesante para mi pagina y para los usuarios resulta q para ver los perfiles la url de cada ...
  #1 (permalink)  
Antiguo 23/12/2007, 14:16
Avatar de ..::MaRcOs::..  
Fecha de Ingreso: diciembre-2006
Mensajes: 328
Antigüedad: 17 años, 4 meses
Puntos: 3
Mejorando la url

Hola

quiero hacer algo q es muy interesante para mi pagina y para los usuarios
resulta q para ver los perfiles la url de cada user queda
index.php?modulo=perfil&id=45 pero es muy maluco asi
seria mejor dominio.com/pedro o pedro.dominio.com

he visto muchos manuales para hacer esto y realmente no lo he
logrado les agradezco si me pueden colaborar...
  #2 (permalink)  
Antiguo 23/12/2007, 15:45
Avatar de carmagedon  
Fecha de Ingreso: junio-2005
Ubicación: Argentina
Mensajes: 794
Antigüedad: 18 años, 10 meses
Puntos: 23
Re: Mejorando la url

Tendrías que hacer, que cuando se registra un usuario, que se creara una carpeta, dentro del directorio, así es posible acceder desde dominio.com/pedro y copiar un par de archivos necesarios, asi el browser detecta que existe un index.php dentro de "/pedro"... no es dificil de hacer, solo es cuestion de darse mania para ésto.

Saludos.
  #3 (permalink)  
Antiguo 23/12/2007, 18:16
(Desactivado)
 
Fecha de Ingreso: diciembre-2006
Mensajes: 225
Antigüedad: 17 años, 5 meses
Puntos: 1
Re: Mejorando la url

averigua si tu server tiene wildcards si tiene sera muy facil

ahora las wildcard lo q hacen es cualquier subdominio o cualquier cosa q escribas se redirecciona al index de tu web de esta forma ademas puedes sacar lo q esta antes del dominio de esta forma podras preguntar pero en este caso tendrias q darle una clave al nombre porq habran varias personas q se llamen pedro y te puede botar un error
  #4 (permalink)  
Antiguo 23/12/2007, 18:58
Avatar de pragone  
Fecha de Ingreso: diciembre-2007
Ubicación: Madrid
Mensajes: 223
Antigüedad: 16 años, 4 meses
Puntos: 2
Re: Mejorando la url

Yo te recomendaría que utilizaras la opción de directorio y no la de subdominio.
Principalmente, porque por un tema de SEO, un subdominio es realmente "otra página" y te interesa que esto se acumule a las páginas de tu sitio.
Además es mucho más sencillo así. Más aún te recomiendo que los enlaces sean algo como:
http://dominio.com/usuarios/nombre_del_usuario

Para eso tienes dos opciones:
1.- mod_rewrite.
Tienes que colocar en tu .htaccess algo como
RewriteEngine On
RewriteRule ^/usuarios/([a-zA-Z0-9_]+)$ /perfil_usuario.php?nombre=$1

2.- Más fácil todavía colocas un 404 especial en el que obtienes la URL que se trató de accesar (no me acuerdo el valor de $_SERVER que te lo trae pero en la doc del PHP está) y si
if (preg_match('!/usuarios/([a-zA-Z0-9_]+)$', $laurl, $matches)) {
// código para mostrar el perfíl del usuario
} else {
header("Response: 404");
// imprimes una página de no se ha encontrado lo que buscas.
}

Saludos,
  #5 (permalink)  
Antiguo 26/12/2007, 05:32
Avatar de ..::MaRcOs::..  
Fecha de Ingreso: diciembre-2006
Mensajes: 328
Antigüedad: 17 años, 4 meses
Puntos: 3
Re: Mejorando la url

pragone me suena la primera opcion, pero creo q puede haber complicaciones
por q no se confunden las variables enviadas por GET?

lo digo por q al navegar en el sitio se envian muchas variables
para los modulos...
  #6 (permalink)  
Antiguo 26/12/2007, 06:42
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 21 años, 5 meses
Puntos: 17
Re: Mejorando la url

No estoy muy puesto en ese tipo de reglas del Apache, pero en principio te podría funcionar bien. Lo que haría sería redireccionar todas las peticiones del estilo de: http://tudominio.com/usuarios/texto a http://tudominio.com/perfil_usuario.php?nombre=texto

Todo lo demás no lo tocaría. Así es como lo entiendo yo, pero todo es probarlo a ver si se comporta como tú quieres. Y ya que estás, hazte con algún manual del mod_rewrite del Apache, así lo podrás personalizar como te interese.
  #7 (permalink)  
Antiguo 28/12/2007, 20:17
Avatar de ..::MaRcOs::..  
Fecha de Ingreso: diciembre-2006
Mensajes: 328
Antigüedad: 17 años, 4 meses
Puntos: 3
Re: Mejorando la url

bueno yo creo q si puede haber problema por q los link normales son asi:

dominio.com/index.php?modulo=portada
dominio.com/index.php?modulo=noticias
dominio.com/index.php?modulo=noticias&id=25

entonces como se pondria para q al ir a:

dominio.com/pedro haga de cuenta q entro a
dominio.com/index.php?modulo=perfil&nombre=pedro
  #8 (permalink)  
Antiguo 28/12/2007, 20:25
Avatar de j_aroche
Server Ninja
 
Fecha de Ingreso: agosto-2006
Ubicación: iPhone: 14.624481,-90.487457
Mensajes: 2.066
Antigüedad: 17 años, 8 meses
Puntos: 223
Re: Mejorando la url

La regla debería ser así:

Código:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z0-9_]+)$ /dominio.com/index.php?modulo=perfil&nombre=$1
Los RewriteCond son para asegurase que la petición no es de un directorio o archivo existente.
  #9 (permalink)  
Antiguo 28/12/2007, 20:25
Avatar de vevni  
Fecha de Ingreso: julio-2005
Ubicación: cancun mexico
Mensajes: 598
Antigüedad: 18 años, 9 meses
Puntos: 3
Re: Mejorando la url

esk esta bien asi como lo aconseja, deberias leerte por google, el mod_rewrite, pues como comentan, es bueno para el SEO, pues es mas legible y tiene mas significado

a google no le gusta variables dinamicas en la url, ademas no dice mucho...
__________________
Código PHP:
echo"hola mundo ver 1221332143.02";
echo
"cuantos usuarios habran impreso hola mundo en el mundo.!???"
  #10 (permalink)  
Antiguo 28/12/2007, 20:28
Avatar de vevni  
Fecha de Ingreso: julio-2005
Ubicación: cancun mexico
Mensajes: 598
Antigüedad: 18 años, 9 meses
Puntos: 3
Re: Mejorando la url

jejeje ahi esta el colaborador de maestros del web y hermano de stephanie..... bueno colaborador y parte de maestros del web, oye amigo, en la foto que tienen en forosdelweb donde salen todos, tu hermana se ve linda, mandale un saludo de mi parte aunque no me conoce, con todo respeto claro...

en realidad se ve hermosa...
http://www.maestrosdelweb.com/sitio/creditos/
__________________
Código PHP:
echo"hola mundo ver 1221332143.02";
echo
"cuantos usuarios habran impreso hola mundo en el mundo.!???"
  #11 (permalink)  
Antiguo 28/12/2007, 20:53
Avatar de ..::MaRcOs::..  
Fecha de Ingreso: diciembre-2006
Mensajes: 328
Antigüedad: 17 años, 4 meses
Puntos: 3
Re: Mejorando la url

coloque el codigo hay en el .htaccess y no paso nada
por favor disculpen tanta preguntadera pero de este tema si no entiendo nada
  #12 (permalink)  
Antiguo 28/12/2007, 23:07
Avatar de j_aroche
Server Ninja
 
Fecha de Ingreso: agosto-2006
Ubicación: iPhone: 14.624481,-90.487457
Mensajes: 2.066
Antigüedad: 17 años, 8 meses
Puntos: 223
Re: Mejorando la url

Upps, lo siento se me paso algo. Intenta cambiando la ultima linea a esto:

Código:
RewriteRule ^([a-zA-Z0-9_]+)$ /index.php?modulo=perfil&nombre=$1
vevni, muchas gracias por tu saludo a Stephanie aunque tengo que aclarar que no es mi hermana, y el único parentezco que tengo con ella es el apellido (que por cierto no es muy común). Pero de nuevo gracias ;)
  #13 (permalink)  
Antiguo 28/12/2007, 23:25
Avatar de vevni  
Fecha de Ingreso: julio-2005
Ubicación: cancun mexico
Mensajes: 598
Antigüedad: 18 años, 9 meses
Puntos: 3
Re: Mejorando la url

jjjojojoj enserio?? no es tu hermana? sabes aprecie mal, me fui por la finta , jejeejjeje

en serio, sorry, aun asi es linda, jejeje, dile que cuando quiera venir a cancun aqui los esperamos a ella y a maestros del web.!
__________________
Código PHP:
echo"hola mundo ver 1221332143.02";
echo
"cuantos usuarios habran impreso hola mundo en el mundo.!???"
  #14 (permalink)  
Antiguo 29/12/2007, 15:18
Avatar de ..::MaRcOs::..  
Fecha de Ingreso: diciembre-2006
Mensajes: 328
Antigüedad: 17 años, 4 meses
Puntos: 3
Re: Mejorando la url

bien funciona perfecto como lo deseaba
pero tengo otra dudita si quiero crear otra regla
para los modulos como hago?

ej: dominio.com/noticias
dominio.com/index.php?modulo=noticias
  #15 (permalink)  
Antiguo 29/12/2007, 16:53
Avatar de j_aroche
Server Ninja
 
Fecha de Ingreso: agosto-2006
Ubicación: iPhone: 14.624481,-90.487457
Mensajes: 2.066
Antigüedad: 17 años, 8 meses
Puntos: 223
Re: Mejorando la url

sería así:

Código:
RewriteRule ^noticias /index.php?modulo=noticias [L]
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 16:50.