Ver Mensaje Individual
  #3  
Antiguo 04-05-2006
Mick Mick is offline
Miembro
 
Registrado: may 2003
Posts: 405
Reputación: 22
Mick Va por buen camino
Si un sitio web es grande, es logico separar las cosas por directorios, esto no hace necesariamente las cosas mas complicadas sino al contrario.
Es mas sencillo tener organizados los scripts por funcionalidad en distintos directorios que tener cientos de archivos todos mezclados en un mismo sitio.

Independientemente de esto ultimo, sí se puede utilizar el sistema que comentas sin necesidad de tener directorios, tampoco es necesario tener archivos de script separados. Esto lo hacen varios gestores de contenidos.
El truco esta en usar un unico script php por ejemplo index.php que recibira todas las peticiones de archivos no encontrados "Not found" y este script debe analizar la url recibida y ejecutar el codigo php necesario

Normalmente se pone en el .htccess una directiva como:

ErrorDocument 404 /index.php

Esto hace que, por ejemplo, cuando alguien pide algo como:

http://www.ejemplo.com/usuario/nuevo

Al no existir la url realmente, el servidor web da un error 404 no encontrado, y ejecuta automaticamente el index.php de la raiz de la pagina web, ahora es este script el que se tiene que encargar de analizar la url recibida y realizar la accion necesaria, cargando el script apropiado o lo que sea.

El gestor de contenido drupal utiliza este sistema, es una caracteristica que le llaman "clean_urls" , urls limpias: www.drupal.org

Una ventaja del uso de urls limpias es que es mucho mas facil para los buscadores indexar las paginas de un sistio web, normalmente indexan muchas mas paginas. Por ejemplo si utilizamos una sintaxis del tipo siguiente para determinadas busquedas:

http://www.ejemplo.es/buscar/titulo/titanic
http://www.ejemplo.es/buscar/titulo/superman
http://www.ejemplo.es/buscar/titulo/spawn

Desde el punto de vista de los buscadores parecen distintas paginas estaticas, y normalmente las indexara todas.

Otra ventaja de tener un index.php centralizado se refiere al control de la web, al tener un unico punto de entrada se puede realizar operaciones que afecten a toda la pagina web de una forma sencilla modificando unicamente el script de entrada, por ejemplo añadir calculos estadisticas, visitas etc , cambios de apariencia globales, control de accesos para denegar la entrada a toda la web a determinados usuarios o ips, y todo esto sin tener que incluir nada en todos y cada uno de los scripts de la web.

Saludos
Miguel
Responder Con Cita