¿Por qué tratarlos como URL con diferentes mayúsculas de ruta y barra diagonal como diferentes?


8

Estas son todas las URL estrictamente diferentes:

http://www.example.com/page
http://www.example.com/pAge
http://www.example.com/page/
http://www.example.com/paGE/

Entiendo que se ajusta a las estrictas normas ISO, pero ¿por qué? ¿Cuántos sitios web hay por ahí que realmente tratan pagey page/como diferentes URL puede visitar? ¿O en realidad usa mayúsculas para diferenciar contenido? Si lo hicieran, les diría que probablemente lo están haciendo mal.

¿Por qué tenemos que perder nuestro tiempo conforme a estas reglas? ¿No es trivial para Google resolver eso pagey page/son la misma página y probablemente no deberían tratarse como contenido duplicado?

Respuestas:


10

Entiendo que se ajusta a las estrictas normas ISO, pero ¿por qué?

Hay diferentes sistemas operativos detrás de los distintos servidores en la red, y para algunos de ellos un directorio o archivo llamado pageno es lo mismo que uno nombrado Page. El resultado es que en realidad son dos ubicaciones diferentes y ni siquiera necesariamente el mismo tipo de ubicación (dir / página). El servidor web puede estar configurado como mayúsculas y minúsculas, pero no puede suponer eso. Por lo tanto, las reglas tienen que asumir las cosas no se preocupan por caso, y si no lo hacen entonces lo que sea. Siendo realistas, probablemente no sea una buena idea confiar en las diferencias de casos, pero la situación existe y, por lo tanto, debe tenerse en cuenta, a veces con cosas como mod_speling .

¿Cuántos sitios web existen que realmente tratan la página y la página / como diferentes URL que puede visitar?

Ellos son diferentes. Casi siempre está oculto para ti:

  1. Cuando va al example.com/foo/servidor web es consciente de que va a un directorio y, por lo tanto, busca un archivo que coincida con lo que esté configurado para reconocer como índice de directorio. Entonces eventualmente terminas en example.com/index.htmlpor ejemplo.
  2. Si va al example.com/fooservidor, en realidad busca un archivo en el directorio raíz llamado just foo. Si no encuentra una, entonces se comprueba si hay un directorio llamado /fooy se puede ir hasta # 1.

Lo que parece estar leyendo como comportamiento "normal" en el n. ° 2 es en realidad un recurso alternativo para manejar un caso probable.
¿Cuántos usan nombres de archivo sin extensión es irrelevante? De nuevo: problema real; debe tenerse en cuenta.

Si lo hicieran, les diría que probablemente lo están haciendo mal.

Esa es una opinión.
Puede respaldarlo con varios argumentos prácticos sobre la insensibilidad a mayúsculas y minúsculas y cómo manejar las URL sin extensión con las que no estoy necesariamente en desacuerdo, pero de hecho estaría equivocado al decir esto.


Ejemplo feo / irritante para no meterse con el caso: hay un sitio que administro, pero la gente de TI del cliente administra el servidor real. Lo configuraron para redirigir todos los éxitos de example.com a www.example.com, pero por cualquier motivo, la redirección también forzó todo en minúsculas (no me dijeron esto). Los editores del sitio estaban subiendo, por ejemplo. CamelCase.jpg. Algún otro código que no controle se vincularía a esas imágenes sin el www, causando todo tipo de roturas tontas hasta que lo buscamos.
Su '


8

Sin intención de ofender, pero Case Sensitivity es VITAL para las URL hoy en día : se usan millones de veces al día:

bit.ly

  1. http://bit.ly/ri2LhQ
  2. http://bit.ly/ri2LHq

Dos sitios muy diferentes, solo posible debido a mayúsculas y minúsculas


3
Adivina cómo lo hice? Agarré una url mía de un caso cambiado de forma mordida y aleatoria. Me tomó 2 intentos encontrar una URL única. Con respecto a su ejemplo donde es relativamente obvio que cada uno debe ser la misma página ... eso es lo que entra en la redirección 301 canónica o basada en servidor. Debe estar a cargo de la potencia de su estructura de URL, no del protocolo HTTP en sí.
Chris Kluis

5

Esta no es una política de Google, son reglas básicas.

Desde el punto de vista del usuario de Windows, es difícil entender los nombres de archivo que distinguen entre mayúsculas y minúsculas. Sin embargo, en sistemas unix / linux, pAge y page no son los mismos archivos ni directorios, y así sucesivamente en los servidores web.

La barra diagonal final es un problema de configuración (u opción). Tenga en cuenta que en la mayoría de los servidores web, el servidor emitirá una redirección 30x en / page two / page /, por lo tanto, requerirá una segunda solicitud a su servidor.

Puede hacer que su servidor web no distinga entre mayúsculas y minúsculas y configurarlo de la forma que desee para cumplir con sus propias reglas.

Pero, de nuevo, no está relacionado con Google en absoluto

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.