http - una - que son los cookies en el celular
¿Por qué las rutas de las cookies son sensibles a las may (3)
Me di cuenta por primera vez hace un par de semanas de que al configurar una cookie http, aunque el nombre de dominio no distingue entre mayúsculas y minúsculas, la ruta es.
Así que un rato una galleta almacenada para
http://SomeWebSite.com
se puede leer usando
http://somewebsite.com
una cookie almacenada para
http://somewebsite.com/SomePath
no se puede leer usando
http://somewebsite.com/somepath
Simplemente no se encontraría.
Como esto está claramente establecido en el RFC (vea el punto 3.3.3 aquí ), dudo que sea un descuido, pero como usuario no estoy capacitado para tratar las URL como texto sensible a mayúsculas y servidores web, hasta donde sé, don Parece que le molesta de cualquier manera, y sirve páginas bien; así que me pregunto: ¿cuál es la razón de esta decisión?
¿Alguien puede arrojar algo de luz?
Si la ruta es sensible a mayúsculas y minúsculas o insensible depende del servidor web. Tradicionalmente, el sistema operativo similar a Unix: s IS distingue entre mayúsculas y minúsculas, mientras que MS no lo está y eso podría reflejarse en los servidores web que se desarrollan en un sistema operativo específico.
Un enlace con información sobre diferentes sistemas de archivos que pueden ser de interés.
Actualizar
A qué recurso apunta una dirección URL del servidor web. http://some.domain.name/myFavouriteThings.txt podría ser un archivo de texto almacenado en el disco duro de mi servidor, pero también se puede almacenar en una base de datos, señalar un script que se ejecuta y devuelve algunas filas aleatorias. Ni siquiera tiene que ser un archivo de texto, podría ser una imagen, video o cualquier otra cosa que se pueda transferir digitalmente.
Pero en este caso, está marcado como un archivo en el servidor. Como el servidor es un sistema unix, el sistema de archivos de los servidores distingue entre mayúsculas y minúsculas. Por lo tanto, solo encontrará el archivo si el caso de la solicitud coincide con el archivo almacenado en el disco. Si el servidor se ha almacenado en un servidor MS, donde el sistema de archivos no distingue entre mayúsculas y minúsculas, el caso de la solicitud probablemente no importe.
Siempre trate todo como sensible a mayúsculas y minúsculas.
La mayoría de los servidores web proporcionan mecanismos a prueba de idiotas. Los dos más comunes que conozco son agregar barras al final de los nombres de directorio ( http://example.com/x
=> http://example.com/x/
) y corregir o ignorar la carcasa: ( http://.com/ABOUT
sirve lo mismo que http://.com/about
). Sin embargo, esto no es un requisito del servidor web, y el navegador lo sabe. http://.com/ABOUT
podría recibir una página completamente diferente de http://.com/about
. El uso de variables GET con la sintaxis? X = y es popular, y los valores son a veces sensibles a las mayúsculas y minúsculas de las secuencias de comandos del servidor. El navegador debe manejar adecuadamente estas posibles diferencias (no almacenarlas en caché como el mismo documento, usar diferentes dominios de cookies, no manipular Javascript, etc.)