Para entender cómo un sitio web maneja una URL como http://www.example.com/about, el lugar más interesante para comenzar son sus expectativas. Parece que está acostumbrado a ver las URL que terminan con una extensión de archivo como ‘.html’ o ‘.php’, o con un separador de directorio como ‘/’. Esto es razonable, porque es un patrón común, y muchos sitios web tienen URL que coinciden.
Sin embargo, la forma en que un sitio web se asigna desde una URL, a algún contenido que ofrece, depende completamente del sitio web. Es decir, depende de cómo esté programado el software que impulsa el sitio web.
Primero observemos que la URL tiene varias partes. Hay una parte de protocolo (por ejemplo, ‘http: //’) y una parte de nombre de dominio (por ejemplo, ‘www.example.com’). Esos se manejan antes de que la solicitud llegue al sitio web. Luego hay una parte de ruta (por ejemplo, ‘/ acerca de’), y a veces una parte de consulta (por ejemplo, ‘? Página = 1 y longitud = 20’), y a veces una parte de anclaje (por ejemplo, ‘#contactos’). Estos son manejados por el software del sitio web.
- ¿Es inteligente crear sitios web a través de códigos o WordPress?
- ¿Cuáles son los mejores sitios web de EE. UU. Que la gente sigue para leer sobre la crisis financiera y cómo ahorrar dinero?
- ¿Puede ser dañino hacer clic en el enlace de un sitio web incluso si no ingresa una contraseña?
- ¿Cuáles son las desventajas de Go en comparación con Node.js?
- Me gustaría comenzar un sitio web similar a Quora pero dedicado a la población de habla rumana. ¿Qué le aconsejaría, para comenzar a implementarlo desde cero, o para intentar alguna forma de asociación con Quora.com?
Al principio de la web, el software del “servidor web” que recibió rutas URL, consultas y anclajes era bastante simple. Las páginas web se almacenaron como archivos en un árbol de directorios. La parte de la ruta de la URL correspondía a los nombres de directorio y nombres de archivo. Es convencional finalizar los nombres de archivo con una extensión que indica el tipo de contenido en el archivo: ‘.html’ para marcado HTML, ‘.php’ para código de lenguaje PHP. Estas extensiones de nombre de archivo se propagaron a través de las URL y se convirtieron en una convención que los usuarios podían ver y esperar.
Pero ahora, puede haber una acción de software muy compleja para separar una ruta URL, cambiarla a diferentes formas y pasarla a módulos de software que construyan una página web a partir de fragmentos almacenados en una base de datos. No es necesario tener archivos en un árbol de directorios correspondiente a cada URL. Por ejemplo, los sistemas de administración de contenido de Drupal o Joomla rompen una ruta URL como ‘/ about’ en una URL revisada como ‘/index.php?module=com_content&itemid=439’, y luego ejecutan el código en el índice del archivo del servidor web. php ‘para llamar a un fragmento de código para’ com_content ‘, que carga un elemento con el número de identificación 439 de una base de datos y crea una página HTML a partir de él. El sistema no busca en un directorio llamado ‘/ about’ un archivo HTML. En dicho sistema, el servidor web tiene un árbol de directorios lleno de archivos, pero los archivos y la estructura del directorio reflejan el código del sitio web, no su contenido.
Yendo un paso más allá, algunos sitios web aceptan URL no de humanos que leen el sitio con navegadores web (o arañas que imitan a dichos humanos), sino de otro software que usa la funcionalidad del sitio a través de servicios web RESTful. Aquí es menos probable que las URL tengan terminaciones ‘.html’ o ‘.php’.
Por lo tanto, no hay nada acerca de la definición de HTTP o de URL que requiera que los sitios web terminen con ‘.php’ o ‘.html’ o ‘/’. Es solo una expectativa que has desarrollado razonablemente, pero no es, como has descubierto, universal.