Normalmente los archivos y carpetas se organizan jerárquicamente.

Una de los principales problemas que se encuentran(nos hemos encontrado) los neófitos en sus primeros pinitos en el mundo de las páginas web personales es entender cómo funcionan las rutas en el sistema de directorios y cómo acceder a sus ficheros sin perderse por el camino.

Antes que nada es conveniente definir algunos conceptos básicos:

  • Una ruta señala la localización exacta de un archivo o directorio mediante una cadena de caracteres concreta (Wikipedia). En resumen, es el camino que seguimos para llegar a un fichero o directorio.
  • Un fichero es esa cosa llamada “Shakira – La loba.mp3” o la foto llamada “Mi novia en Buenos Aires.jpg” o el documento de Word(LibreOffice mola más, pero allá tú) “Horarios de clase.doc”.

En esta entrada vamos a suponer que utilizamos un sistema tipo Unix porque es lo que con mayor probalididad nos encontremos en un nuestro servidor web. Pues bien, si yo tengo la canción “Shakira – La loba.mp3” en una capeta llamada “Mi música” en mi directorio personal “alex” con toda probalidad la ruta(camino) para llegar hasta esa canción sea: “/home/alex/Shakira – La loba.mp3” o mejor “/home/alex/Shakira%20-%20La%20loba.mp3”. Esos caracteres extraños “%20” significa que es un espacio en blanco. Es recomendable utilizar siempre nombres de archivos y directorios sin espacios en blanco pues si en alguna aplicación utilizamos ese archivo o directorio sin incluir el símbolo %20 podríamos tener problemas. Una buena alternativa a los espacios en blanco es el guión bajo( _ ), podríamos haber llamado a este hit del verano “Shakira_La_loba.mp3”.

La ruta que acabamos de ver se llama ruta absoluta porque señala el fichero o directorio desde el directorio raíz de nuestra sistema de archivos. Este concepto es muy importante y luego veremos el porqué.

Veamos otro ejemplo más abstracto. Imaginemos que nuestro sistema de archivos es nuestra propia casa, que está formada por todos los elementos que se encuentran en ella: habitaciones, cuartos de baño, armarios, sillones, estanterías, etc. El directorio raíz ( / ) del ejemplo son todos los objetos e instancias de nuestra casa. Ahora queremos ir a la habitación de Paula, ¿cual sería el camino para ir hasta allí? /habitación/Paula. ¿Y cual es el camino principal a todas las habitaciones de la casa? Pues /habitación ¿Y la del balcón? /balcón ¿Y qué hay en el baúl de la habitación de Sergio? Pues un montón de fotografías de su primera comunión que encontraremos en /habitación/Sergio/baúl. Todas estas rutas son absolutas por qué siempre nuestro punto de partida ha sido la puerta de nuestra casa. Pero… vayamos ahora a la habitación de Paula(la primera vez lógicamente deberemos seguir la ruta absoluta comentada anteriormente, pues lo normal es que primero entremos a nuestra casa por la puerta y vayamos a la habitación de Paula siguiendo un camino, el camino descrito). Estamos ya en la habitación de Paula. Estamos dentro !eh! Tiene un bonito armario y quiero ver lo que hay dentro(no malpenséis jeje), ¿cómo entro en el armario? Algunos diréis que siguiendo el camino /habitación/Paula/armario, y sí, es una forma correcta de ver lo que hay en el armario. Esa sería la ruta absoluta. Pero recordad que he dicho que hemos entrado en la habitación de Paula, entonces, podríamos entrar en el armario así: ./armario o simplemente armario. Esto es una ruta relativa, porque indica la ubicación armario respecto la ubicación actual (la habitación de Paula) y no respecto al directorio raíz de nuestro sistema de ficheros.

Dejando de lado el ejemplo anterior(que no sé si os habrá liado más) vayamos al lío con nuestra página web, que es para eso habéis venido hasta NETFLIE. a través del camino http://netflie.es/blog 😛 Bien, accedemos a nuestro espacio web personal a través de FTP con los datos que nos haya proporcionado la empresa que nos aloja. Lo primero que veremos será el directorio raíz del sistema de ficheros de nuestro espacio web.

Directorio raiz FTP

Aunque, en realidad, el directorio raíz para nuestra página web será /www o /public_html(esto puede variar según en que empresa alojemos nuestra web). Así que para no liarnos entramos en la carpeta www o public_html y vamos a suponer a partir de ahora que ese es nuestro directorio raíz:

Directorio raiz de nuestra página web

Y ahora todo es muy fácil. Si, desde el archivo index.php, por ejemplo, quiero acceder a la foto llamada “mi_foto_1.jpg” la ruta a ese archivo sería ./images/mi_foto_1.jpg” o images/mi_foto_1.jpg. Si desde el mismo archivo index.php quiero acceder a otra archivo hermano suyo, por ejemplo, el llamado “contactar.php” la ruta sería ./contactar.php o contactar.php.

Y si ahora entro en la carpeta meteolive y tengo otro archivo index.php y quiero acceder a un archivo hermano llamado archivo_hermano.pdf, ¿cuál sería la ruta? Pues análogamente a lo explicado anteriormente sería ./archivo_hermano.pdf o archivo_hermano.pdf. Como veis sólo usamos rutas relativas y no absolutas, pues en un servidor de alojamiento compartido serían algo complicadas de utilizar, pero esto ya es otro tema que explicaré algún día.

Rutas relativas