From 1109132f09d75da9a28b649c7677bb6ce07c40c0 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:41:45 -0500 Subject: initial commit --- .../es/web/http/headers/accept-charset/index.html | 85 +++++ files/es/web/http/headers/accept-ranges/index.html | 70 ++++ files/es/web/http/headers/accept/index.html | 99 ++++++ .../access-control-allow-credentials/index.html | 99 ++++++ .../access-control-allow-headers/index.html | 93 +++++ .../access-control-allow-methods/index.html | 81 +++++ .../headers/access-control-allow-origin/index.html | 99 ++++++ .../access-control-expose-headers/index.html | 115 ++++++ files/es/web/http/headers/age/index.html | 75 ++++ files/es/web/http/headers/allow/index.html | 61 ++++ files/es/web/http/headers/authorization/index.html | 86 +++++ files/es/web/http/headers/cache-control/index.html | 241 +++++++++++++ .../http/headers/content-disposition/index.html | 144 ++++++++ .../web/http/headers/content-encoding/index.html | 97 +++++ .../es/web/http/headers/content-length/index.html | 60 ++++ .../web/http/headers/content-location/index.html | 156 ++++++++ .../headers/content-security-policy/index.html | 252 +++++++++++++ files/es/web/http/headers/content-type/index.html | 111 ++++++ files/es/web/http/headers/cookie/index.html | 74 ++++ .../cross-origin-resource-policy/index.html | 68 ++++ files/es/web/http/headers/etag/index.html | 98 +++++ files/es/web/http/headers/expires/index.html | 81 +++++ files/es/web/http/headers/host/index.html | 75 ++++ files/es/web/http/headers/index.html | 396 +++++++++++++++++++++ files/es/web/http/headers/keep-alive/index.html | 93 +++++ files/es/web/http/headers/link/index.html | 79 ++++ files/es/web/http/headers/origin/index.html | 83 +++++ files/es/web/http/headers/pragma/index.html | 77 ++++ files/es/web/http/headers/referer/index.html | 84 +++++ .../es/web/http/headers/referrer-policy/index.html | 237 ++++++++++++ files/es/web/http/headers/server/index.html | 66 ++++ files/es/web/http/headers/set-cookie/index.html | 217 +++++++++++ .../headers/strict-transport-security/index.html | 112 ++++++ .../web/http/headers/transfer-encoding/index.html | 117 ++++++ files/es/web/http/headers/user-agent/index.html | 140 ++++++++ files/es/web/http/headers/vary/index.html | 81 +++++ .../web/http/headers/www-authenticate/index.html | 87 +++++ .../http/headers/x-content-type-options/index.html | 83 +++++ .../es/web/http/headers/x-forwarded-for/index.html | 74 ++++ .../es/web/http/headers/x-frame-options/index.html | 134 +++++++ .../web/http/headers/x-xss-protection/index.html | 87 +++++ 41 files changed, 4667 insertions(+) create mode 100644 files/es/web/http/headers/accept-charset/index.html create mode 100644 files/es/web/http/headers/accept-ranges/index.html create mode 100644 files/es/web/http/headers/accept/index.html create mode 100644 files/es/web/http/headers/access-control-allow-credentials/index.html create mode 100644 files/es/web/http/headers/access-control-allow-headers/index.html create mode 100644 files/es/web/http/headers/access-control-allow-methods/index.html create mode 100644 files/es/web/http/headers/access-control-allow-origin/index.html create mode 100644 files/es/web/http/headers/access-control-expose-headers/index.html create mode 100644 files/es/web/http/headers/age/index.html create mode 100644 files/es/web/http/headers/allow/index.html create mode 100644 files/es/web/http/headers/authorization/index.html create mode 100644 files/es/web/http/headers/cache-control/index.html create mode 100644 files/es/web/http/headers/content-disposition/index.html create mode 100644 files/es/web/http/headers/content-encoding/index.html create mode 100644 files/es/web/http/headers/content-length/index.html create mode 100644 files/es/web/http/headers/content-location/index.html create mode 100644 files/es/web/http/headers/content-security-policy/index.html create mode 100644 files/es/web/http/headers/content-type/index.html create mode 100644 files/es/web/http/headers/cookie/index.html create mode 100644 files/es/web/http/headers/cross-origin-resource-policy/index.html create mode 100644 files/es/web/http/headers/etag/index.html create mode 100644 files/es/web/http/headers/expires/index.html create mode 100644 files/es/web/http/headers/host/index.html create mode 100644 files/es/web/http/headers/index.html create mode 100644 files/es/web/http/headers/keep-alive/index.html create mode 100644 files/es/web/http/headers/link/index.html create mode 100644 files/es/web/http/headers/origin/index.html create mode 100644 files/es/web/http/headers/pragma/index.html create mode 100644 files/es/web/http/headers/referer/index.html create mode 100644 files/es/web/http/headers/referrer-policy/index.html create mode 100644 files/es/web/http/headers/server/index.html create mode 100644 files/es/web/http/headers/set-cookie/index.html create mode 100644 files/es/web/http/headers/strict-transport-security/index.html create mode 100644 files/es/web/http/headers/transfer-encoding/index.html create mode 100644 files/es/web/http/headers/user-agent/index.html create mode 100644 files/es/web/http/headers/vary/index.html create mode 100644 files/es/web/http/headers/www-authenticate/index.html create mode 100644 files/es/web/http/headers/x-content-type-options/index.html create mode 100644 files/es/web/http/headers/x-forwarded-for/index.html create mode 100644 files/es/web/http/headers/x-frame-options/index.html create mode 100644 files/es/web/http/headers/x-xss-protection/index.html (limited to 'files/es/web/http/headers') diff --git a/files/es/web/http/headers/accept-charset/index.html b/files/es/web/http/headers/accept-charset/index.html new file mode 100644 index 0000000000..a6a5f9c6c8 --- /dev/null +++ b/files/es/web/http/headers/accept-charset/index.html @@ -0,0 +1,85 @@ +--- +title: Accept-Charset +slug: Web/HTTP/Headers/Accept-Charset +tags: + - Negociación de Contenido +translation_of: Web/HTTP/Headers/Accept-Charset +--- +
{{HTTPSidebar}}
+ +

The Accept-Charset request HTTP header advertises which character set the client is able to understand. Using content negotiation, the server then selects one of the proposals, uses it and informs the client of its choice within the {{HTTPHeader("Content-Type")}} response header. Browsers usually don't set this header as the default value for each content type is usually correct and transmitting it would allow easier fingerprinting.

+ +

If the server cannot serve any matching character set, it can theoretically send back a {{HTTPStatus("406")}} (Not Acceptable) error code. But, for a better user experience, this is rarely done and the more common way is to ignore the Accept-Charset header in this case.

+ +
+

In early versions of HTTP/1.1, a default charset (ISO-8859-1) was defined. This is no more the case and now each content type may have its own default.

+
+ + + + + + + + + + + + +
Header type{{Glossary("Request header")}}
{{Glossary("Forbidden header name")}}yes
+ +

Syntax

+ +
Accept-Charset: <charset>
+
+// Multiple types, weighted with the {{glossary("quality values", "quality value")}} syntax:
+Accept-Charset: utf-8, iso-8859-1;q=0.5
+ +

Directives

+ +
+
<charset>
+
Un conjunto de caracteres como utf-8 o iso-8859-15.
+
*
+
Any charset not mentioned elsewhere in the header; '*' being used as a wildcard.
+
;q= (q-factor weighting)
+
Any value is placed in an order of preference expressed using a relative quality value called the weight.
+
+ +

Examples

+ +
Accept-Charset: iso-8859-1
+
+Accept-Charset: utf-8, iso-8859-1;q=0.5
+
+Accept-Charset: utf-8, iso-8859-1;q=0.5, *;q=0.1
+
+ +

Especificaciones

+ + + + + + + + + + + + +
EspecificaciónTítulo
{{RFC("7231", "Accept-Charset", "5.3.3")}}Hypertext Transfer Protocol (HTTP/1.1): Semantics and Context
+ +

Compatibilidad del navegador

+ + + +

{{Compat("http.headers.Accept-Charset")}}

+ +

También puedes revisar:

+ + diff --git a/files/es/web/http/headers/accept-ranges/index.html b/files/es/web/http/headers/accept-ranges/index.html new file mode 100644 index 0000000000..30b447504b --- /dev/null +++ b/files/es/web/http/headers/accept-ranges/index.html @@ -0,0 +1,70 @@ +--- +title: Accept-Ranges +slug: Web/HTTP/Headers/Accept-Ranges +translation_of: Web/HTTP/Headers/Accept-Ranges +--- +

El encabezado de respuesta HTTP Accept-Ranges es un marcador usado por el servidor para notificar que soporta solicitudes parciales. El valor de este campo indica la unidad que puede ser usada para definir el rango.

+ +

En caso de estar presente un encabezado de respuesta Accept-Ranges, el navegador puede intentar restablecer una descarga interrumpida, en vez de reiniciarla o comenzarla desde el principio.

+ + + + + + + + + + + + +
Header type{{Glossary("Response header")}}
{{Glossary("Forbidden header name")}}no
+ +

Sintaxis

+ +
Accept-Ranges: bytes
+Accept-Ranges: none
+ +

Directivas

+ +
+
none
+
No indicar la unidad de medida del rango no está soportado, esto hace que el encabezado sea tomado como ausente, y por lo tanto es usado raramente, aunque algunos exploradores , como IE9, esto es usado para inhabilitar o remover el botón de pausa en el administrador de descargas.
+
bytes
+
+

La unidad de medida del rango es bytes.

+
+
+ +

Ejemplos

+ +
Accept-Ranges: bytes
+
+ +

Especificaciones

+ + + + + + + + + + + + +
SpecificationTitle
{{RFC("7233", "Accept-Ranges", "2.3")}}Hypertext Transfer Protocol (HTTP/1.1): Range Requests
+ +

Compatibilidad con navegadores

+ + + +

{{Compat("http/headers/accept-ranges")}}

+ +

Vea también

+ + diff --git a/files/es/web/http/headers/accept/index.html b/files/es/web/http/headers/accept/index.html new file mode 100644 index 0000000000..7311f2498f --- /dev/null +++ b/files/es/web/http/headers/accept/index.html @@ -0,0 +1,99 @@ +--- +title: Accept +slug: Web/HTTP/Headers/Accept +tags: + - Cabecera HTTP + - Cabecera de Pedido + - HTTP + - Referencia +translation_of: Web/HTTP/Headers/Accept +--- +
{{HTTPSidebar}}
+ +

La cabecera de pedido Accept anuncia que tipo de contenido el cliente puede procesar, expresado como un tipo MIME. Usando negociación de contenido, el servidor selecciona una de las propuestas , la utiliza e informa al cliente de la elección a través de  la cabecera de respuesta {{HTTPHeader("Content-Type")}} .

+ +

Los navegadores configuran los valores adecuados en dependencia del contexto donde se ha hecho el pedido, por ejemplo: al solicitar una hoja de estilos CSS es configurado un valor diferente que cuando se solicita una imagen, un video o un script.

+ + + + + + + + + + + + + + + + +
Tipo de Cabecera{{Glossary("Request header")}}
{{Glossary("Forbidden header name")}}no
{{Glossary("Simple header", "CORS-safelisted request-header")}}si
+ +

Sintaxis

+ +
Accept: <MIME_type>/<MIME_subtype>
+Accept: <MIME_type>/*
+Accept: */*
+
+// Multiples tipos, priorizados con {{glossary("quality values", "quality value")}} sintaxis:
+Accept: text/html, application/xhtml+xml, application/xml;q=0.9, */*;q=0.8
+ +

Directivas

+ +
+
<MIME_type>/<MIME_subtype>
+
Un único y preciso tipo MIME, como text/html.
+
<MIME_type>/*
+
Un tipo MIME, pero con cualquier subtipo.
+
Por ejmplo, image/* comincide con: +
    +
  • image/png
  • +
  • image/svg
  • +
  • image/gif 
  • +
+
+
*/*
+
Culaquier tipo MIME
+
;q= (donde q es la importancia o peso)
+
Culaquier valor es colocado en orden de preferencia, expresada usando un valor de calidad llamado weight (peso en español).
+
+ +

Ejemplos

+ +
Accept: text/html
+
+Accept: image/*
+
+Accept: text/html, application/xhtml+xml, application/xml;q=0.9, */*;q=0.8
+
+ +

Especificaciones

+ + + + + + + + + + + + +
EspecificaciónTitulo
{{RFC("7231", "Accept", "5.3.2")}}Hypertext Transfer Protocol (HTTP/1.1): Semantics and Context
+ +

Compatibilidad con Navegadores

+ + + +

{{Compat("http.headers.Accept")}}

+ +

Tambien Ver

+ + diff --git a/files/es/web/http/headers/access-control-allow-credentials/index.html b/files/es/web/http/headers/access-control-allow-credentials/index.html new file mode 100644 index 0000000000..1b01c6d9ac --- /dev/null +++ b/files/es/web/http/headers/access-control-allow-credentials/index.html @@ -0,0 +1,99 @@ +--- +title: Access-Control-Allow-Credentials +slug: Web/HTTP/Headers/Access-Control-Allow-Credentials +tags: + - Access-Control-Allow-Credencials + - CORS + - HTTP + - Referencia + - credenciales + - encabezado +translation_of: Web/HTTP/Headers/Access-Control-Allow-Credentials +--- +
{{HTTPSidebar}}
+ +

El encabezado de respuesta Access-Control-Allow-Credentials le dice al navegador si exponer la respuesta al código JavaScript (del frontend) cuando el modo credenciales en la petición es incluído.

+ +

Cuando las credenciales de una petición ({{domxref("Request.credentials")}}) es include, los navegadores sólo expondran la respuesta al código JavaScript del frontend si el valor de Access-Control-Allow-Credentials es true.

+ +

Las credenciales son cookies, encabezados de autorización o certíficados de cliente TLS.

+ +

Cuando se usa como parte de una respueste a una petición previa, indica si la petición real puede ser hecha utilizando credenciales. Note que peticiones {{HTTPMethod("GET")}} sencillas no tienen una solicitud previa, y por lo tanto, una petición es hecha por un recurso con credenciales, si el encabezado no regresa con el recurso, la respuesta es ignorada por el navegador y no es devuelto como contenido web.

+ +

El encabezado Access-Control-Allow-Credentials trabaja en conjunción con la propiedad {{domxref("XMLHttpRequest.withCredentials")}} o con la opción credentials en el constructor {{domxref("Request.Request()", "Request()")}}  de la API Fetch. Para una petición CORS con credenciales, para que el navegador exponga la respuesta al código JavaScript del fronend, tanto el servidor (utilizando el encabezado Access-Control-Allow-Credentials) y el cliente (al configurar el modo de las credenciales para peticiones XHR, Fetch, o Ajax) se debe indicar que estan permitiendo la inclusión de credenciales.

+ + + + + + + + + + + + +
Tipo de encabezado{{Glossary("Response header", "Respuesta del encabezado")}}
{{Glossary("Forbidden header name", "Nombre prohibido del encabezado")}}no
+ +

Sintaxis

+ +
Access-Control-Allow-Credentials: true
+
+ +

Directivas

+ +
+
true
+
El único valor válido para este encabezado es true (en minúsculas). Si no se necesitan credenciales, se debe omitir este encabezado (en lugar de colocar su valor como false).
+
+ +

Ejemplos

+ +

Permitir credenciales:

+ +
Access-Control-Allow-Credentials: true
+ +

Utilizando XHR con credenciales:

+ +
var xhr = new XMLHttpRequest();
+xhr.open('GET', 'http://example.com/', true);
+xhr.withCredentials = true;
+xhr.send(null);
+ +

Utilizando Fetch con credenciales:

+ +
fetch(url, {
+  credentials: 'include'
+})
+ +

Especificaciones

+ + + + + + + + + + + + + + + + +
EspecifiaciónEstadoComentario
{{SpecName('Fetch','#http-access-control-allow-credentials', 'Access-Control-Allow-Credentials')}}{{Spec2("Fetch")}}Definición inicial
+ +

Compatibilidad del navegador

+ + + +

{{Compat("http.headers.Access-Control-Allow-Credentials")}}

+ +

Ver también

+ + diff --git a/files/es/web/http/headers/access-control-allow-headers/index.html b/files/es/web/http/headers/access-control-allow-headers/index.html new file mode 100644 index 0000000000..616007cab2 --- /dev/null +++ b/files/es/web/http/headers/access-control-allow-headers/index.html @@ -0,0 +1,93 @@ +--- +title: Access-Control-Allow-Headers +slug: Web/HTTP/Headers/Access-Control-Allow-Headers +tags: + - CORS + - encabezado + - encabezado HTTP + - header +translation_of: Web/HTTP/Headers/Access-Control-Allow-Headers +--- +
{{HTTPSidebar}}
+ +

El encabezado de respuesta Access-Control-Allow-Headers es usado en la respuesta  a una {{glossary("preflight request", "solicitud preflight")}} para indicar cuáles encabezados HTTP pueden ser usados durante dicha solicitud.

+ +

Los {{glossary("simple header", "encabezados simples")}}, {{HTTPHeader("Accept")}}, {{HTTPHeader("Accept-Language")}}, {{HTTPHeader("Content-Language")}}, {{HTTPHeader("Content-Type")}} (pero sólo con un tipo MIME de sus valores analizados (ignorando los parámetros) de cualquier application/x-www-form-urlencoded, multipart/form-data, o text/plain), siempre están disponibles y no necesitan ser incluidos por este encabezado.

+ +

Este encabezado es necesario si la solicitud tiene un encabezado {{HTTPHeader("Access-Control-Request-Headers")}}.

+ + + + + + + + + + + + +
Tipo de encabezado{{Glossary("Response header", "Encabezado de respuesta")}}
{{Glossary("Forbidden header name", "Nombre de encabezado prohibido")}}no
+ +

Sintaxis

+ +
Access-Control-Allow-Headers: <nombre-de-encabezado>, <nombre-de-encabezado>, ...
+
+ +

Directivas

+ +
+
<nombre-de-encabezado>
+
Lista de los encabezados soportados separados por una coma.
+
+ +

Ejemplos

+ +
Access-Control-Allow-Headers: X-Custom-Header
+ +

Especificaciones

+ + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('Fetch','#http-access-control-allow-headers', 'Access-Control-Allow-Headers')}}{{Spec2("Fetch")}}Definición inicial.
+ +

Compatibilidad con navegadores

+ + + +

{{Compat("http.headers.Access-Control-Allow-Headers")}}

+ +

Notas de compatibilidad

+ + + +

Véase también

+ + diff --git a/files/es/web/http/headers/access-control-allow-methods/index.html b/files/es/web/http/headers/access-control-allow-methods/index.html new file mode 100644 index 0000000000..062ed99783 --- /dev/null +++ b/files/es/web/http/headers/access-control-allow-methods/index.html @@ -0,0 +1,81 @@ +--- +title: Access-Control-Allow-Methods +slug: Web/HTTP/Headers/Access-Control-Allow-Methods +translation_of: Web/HTTP/Headers/Access-Control-Allow-Methods +--- +
{{HTTPSidebar}}
+ +

La cabecera de respuesta Access-Control-Allow-Methods especifica el método o los métodos aceptados cuando se accede al recurso en respuesta de un {{glossary("preflight request")}}.

+ + + + + + + + + + + + +
Tipo de cabecera{{Glossary("Response header")}}
{{Glossary("Forbidden header name")}}no
+ +

Sintaxis

+ +
Access-Control-Allow-Methods: <method>, <method>, ...
+
+ +

Directivas

+ +
+
<método>
+
Comma-delimited list of the allowed HTTP request methods.
+
+ +

Ejemplos

+ +
Access-Control-Allow-Methods: POST, GET, OPTIONS
+ +

Especificaciones

+ + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('Fetch','#http-access-control-allow-methods', 'Access-Control-Allow-Methods')}}{{Spec2("Fetch")}}Initial definition
+ +

Compatibilidad de navegador

+ + + +

{{Compat("http.headers.Access-Control-Allow-Methods")}}

+ +

Notas de compatibilidad

+ + + +

See also

+ + diff --git a/files/es/web/http/headers/access-control-allow-origin/index.html b/files/es/web/http/headers/access-control-allow-origin/index.html new file mode 100644 index 0000000000..e3fed487a2 --- /dev/null +++ b/files/es/web/http/headers/access-control-allow-origin/index.html @@ -0,0 +1,99 @@ +--- +title: Access-Control-Allow-Origin +slug: Web/HTTP/Headers/Access-Control-Allow-Origin +tags: + - Access Control + - Access-Control-Allow-Origin + - CORS + - HTTP + - Lidiando con CORS + - Origen + - Referencia + - Seguridad + - encabezado HTTP + - error cross-origin +translation_of: Web/HTTP/Headers/Access-Control-Allow-Origin +--- +
{{HTTPSidebar}}
+ +

El encabezado de respuesta Access-Control-Allow-Origin indica si los recursos de la respuesta pueden ser compartidos con el {{glossary("origin", "origen")}} dado.

+ + + + + + + + + + + + +
Tipo de encabezado{{Glossary("Response header", "Encabezado de respuesta")}}
{{Glossary("Forbidden header name", "Nombre de encabezado prohibido")}}no
+ +

Sintaxis

+ +
Access-Control-Allow-Origin: *
+Access-Control-Allow-Origin: <origen>
+Access-Control-Allow-Origin: null
+
+ +

Directivas

+ +
+
*
+
Para las peticiones sin credenciales, el servidor puede especificar el caracter "*" como un comodín, permitiendo a cualquier origen acceder al recurso. El acceso será permitido solamente para las peticiones hechas con el atributo {{htmlattrxref("crossorigin")}} definido como "anonymous". Intentar usar el comodín con credenciales resultará en un error.
+
+
<origen>
+
Especifica que origen puede acceder al recurso. Sólo se puede especificar un origen.
+
+ +

Ejemplos

+ +

Para permitir a cualquier origen el acceso a tus recursos, puedes especificar:

+ +
Access-Control-Allow-Origin: *
+ +

Una respuesta que le dice al navegador que permita la petición de código del origen https://developer.mozilla.org para acceder a los recursos que incluyan lo siguiente:

+ +
Access-Control-Allow-Origin: https://developer.mozilla.org
+ +

Limitando los posibles valores Access-Control-Allow-Origin de un conjunto de orígenes permitidos requiere código del lado del servidor para revisar el valor de la encabezado de petición {{HTTPHeader("Origin")}}, comparan con la lista de valores permitidos, y entonces si el valor {{HTTPHeader("Origin")}} se encuentra en la lista, para definir el valor de Access-Control-Allow-Origin al mismo valor que {{HTTPHeader("Origin")}}.

+ +

CORS y caché

+ +

Si el servidor envía una respuesta con un valor Access-Control-Allow-Origin que es un origen explícito (en lugar del comodín "*"), entonces a respuesta debería incluir también el encabezado de respuesta {{HTTPHeader("Vary")}} con el valor origin - para indicar a los navegadores que las respuestas del servidor pueden diferir basadas en el valor del encabezado de respueta Origin.

+ +
Access-Control-Allow-Origin: https://developer.mozilla.org
+Vary: Origin
+ +

Especificaciones

+ + + + + + + + + + + + + + +
EspecificaciónEstadoComentario
{{SpecName('Fetch','#http-access-control-allow-origin', 'Access-Control-Allow-Origin')}}{{Spec2("Fetch")}}Definición Inicial.
+ +

Compatibilidad del Navegador

+ + + +

{{Compat("http.headers.Access-Control-Allow-Origin")}}

+ +

Veáse también

+ + diff --git a/files/es/web/http/headers/access-control-expose-headers/index.html b/files/es/web/http/headers/access-control-expose-headers/index.html new file mode 100644 index 0000000000..22ecdf4f75 --- /dev/null +++ b/files/es/web/http/headers/access-control-expose-headers/index.html @@ -0,0 +1,115 @@ +--- +title: Access-Control-Expose-Headers +slug: Web/HTTP/Headers/Access-Control-Expose-Headers +tags: + - CORS + - Cabecera + - HTTP +translation_of: Web/HTTP/Headers/Access-Control-Expose-Headers +--- +
{{HTTPSidebar}}
+ +

La cabecera de respuesta Access-Control-Expose-Headers indica qué cabeceras pueden ser expuestas como parte de la respuesta listando sus nombres.

+ +

Por defecto, solo se exponen las 7 cabeceras HTTP seguras ({{Glossary("CORS-safelisted response header", "CORS-safelisted response headers")}}, {{Glossary("Simple response header", "simple response headers")}}):

+ + + +

Si quieres que los clientes puedan acceder a otra cabeceras, tienes que listarlas usando la cabecera Access-Control-Expose-Headers

+ + + + + + + + + + + + +
Header type{{Glossary("Response header")}}
{{Glossary("Forbidden header name")}}no
+ +

Sintaxis

+ +
Access-Control-Expose-Headers: <header-name>, <header-name>, ...
+Access-Control-Expose-Headers: *
+ +

Directivas

+ +
+
<header-name>
+
Una lista de cabeceras expuestas que consiste en cero o mas nombres de cabeceras diferentes a {{Glossary("Simple response header", "simple response headers")}} que el recurso puede usar y pueden ser expuestas.
+
* (wildcard, comodín)
+
El valor "*" solo funciona como comodín para peticiones sin credenciales (peticiones sin HTTP cookies o autenticación HTTP). Para peticiones con credenciales, se trata como el literal "*", sin semánticas especiales.
+ La cabecera {{HTTPHeader("Authorization")}} siempre se añadirá de manera explícita.
+ Vea cómo se añade en los ejemplos de más abajo.
+
+ +

Ejemplos

+ +

Para exponer una cabecera no simple, puedes especificar:

+ +
Access-Control-Expose-Headers: Content-Length
+ +

Para exponer cabeceras personalizadas, como X-Kuma-Revision, puedes especificar varias cabeceras separadas por coma:

+ +
Access-Control-Expose-Headers: Content-Length, X-Kuma-Revision
+ +

En peticiones sin credenciales puedes utilizar el valor comodín:

+ +
Access-Control-Expose-Headers: *
+ +

Si necesitas acceder (exponer) la cabecera {{HTTPHeader("Authorization")}}, hay que añadirla de manera explícita:

+ +
Access-Control-Expose-Headers: *, Authorization
+ +

Especificaciones

+ + + + + + + + + + + + + + +
EspecificaciónEstadoComentario
{{SpecName('Fetch','#http-access-control-expose-headers', 'Access-Control-Expose-Headers')}}{{Spec2("Fetch")}}
+ +

Compatibilidad de navegadores

+ + + +

{{Compat("http.headers.Access-Control-Expose-Headers")}}

+ +

Notas de compatibilidad

+ + + +

Ver también

+ + diff --git a/files/es/web/http/headers/age/index.html b/files/es/web/http/headers/age/index.html new file mode 100644 index 0000000000..58498e3dca --- /dev/null +++ b/files/es/web/http/headers/age/index.html @@ -0,0 +1,75 @@ +--- +title: Age +slug: Web/HTTP/Headers/Age +tags: + - Encabezado HTTP Age +translation_of: Web/HTTP/Headers/Age +--- +
 
+ +
El encabezado Age contiene el tiempo medido en segundos que el objeto ha estado en la memoria caché de servidor proxy.
+ +
 
+ +
El encabezado Age suele estar seteado en 0 (cero). Si Age : 0 probablemente en ese instante se acaba de obtener la respuesta del servidor de origen, de lo contrario, por lo general esto se calcula como la diferencia entre la fecha actual del proxy y la fecha dada por el parámetro en cabecera "Date" ({{HTTPHeader("Date")}} ) incluído en la respuesta HTTP.
+ +
 
+ + + + + + + + + + + + +
Tipo de Cabecera{{Glossary("Response header")}}
Nombre de Cabecera Prohibido {{Glossary("Forbidden header name")}}no
+ +

Sintaxis

+ +
Age: <segundos>
+
+ +

Directivas

+ +
+
<segundos>
+
+

Número entero no negativo, que representa el tiempo en segundos que el objeto ha almacenado en la caché del proxy.

+
+
+ +

Ejemplos

+ +
Age: 24
+ +

Especificaciones

+ + + + + + + + + + + + +
SpecificationTitle
{{RFC("7234", "Age", "5.1")}}Hypertext Transfer Protocol (HTTP/1.1): Caching
+ +

Compatibilidad de Navegadores

+ + + +

{{Compat("http.headers.Age")}}

+ +

Ver también

+ + diff --git a/files/es/web/http/headers/allow/index.html b/files/es/web/http/headers/allow/index.html new file mode 100644 index 0000000000..d5a0e723ea --- /dev/null +++ b/files/es/web/http/headers/allow/index.html @@ -0,0 +1,61 @@ +--- +title: Allow +slug: Web/HTTP/Headers/Allow +translation_of: Web/HTTP/Headers/Allow +--- +
{{HTTPSidebar}}
+ +

La cabecera Allow enumera el conjunto de métodos admitidos por un recurso.

+ +

Esta cabecera debe ser enviada si el servidor responde con un estado {{HTTPStatus("405")}} Method Not Allowed para indicar cual metodo de peticion puede ser usado. Una cabecera Allow vacia indica que el recurso no permite ningún método de solicitud, que podría ocurrir temporalmente para un recurso determinado, por ejemplo.

+ + + + + + + + + + + + +
Header type{{Glossary("Entity header")}}
{{Glossary("Forbidden header name")}}no
+ +

Sintáxis

+ +
Allow: <http-methods>
+
+ +

Directivas

+ +
+
<http-methods>
+
La lista de métodos de solicitud HTTP permitidos.
+
+ +

Ejemplo

+ +
Allow: GET, POST, HEAD
+ +

Especificaciones

+ + + + + + + + + + + + +
EspecificaciónTítulo
{{RFC("7231", "Allow", "7.4.1")}}Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content
+ +

Vea también

+ + diff --git a/files/es/web/http/headers/authorization/index.html b/files/es/web/http/headers/authorization/index.html new file mode 100644 index 0000000000..79545c3a28 --- /dev/null +++ b/files/es/web/http/headers/authorization/index.html @@ -0,0 +1,86 @@ +--- +title: Authorization +slug: Web/HTTP/Headers/Authorization +translation_of: Web/HTTP/Headers/Authorization +--- +
{{HTTPSidebar}}
+ +

La cabecera de petición Authorization contiene las credenciales para autenticar a un usuario en un servidor, usualmente luego de que el servidor haya respondido con un estado {{HTTPStatus("401")}} Unauthorized y la cabecera {{HTTPHeader("WWW-Authenticate")}}.

+ + + + + + + + + + + + +
Tipo de cabecera{{Glossary("Cabecera de respuesta")}}
{{Glossary("Nombre de encabezado prohibido")}}No
+ +

Sintaxis

+ +
Authorization: <tipo> <credenciales>
+ +

Directivas

+ +
+
<tipo>
+
Tipo de Autenticación. Un tipo común es "Basic". Otros tipos: + +
+
<credenciales>
+
Si se utiliza el esquema de la autenticación "Basic", las credenciales son construidas de esta forma: +
    +
  • El usuario y la contraseña se combinan con dos puntos (aladdin:opensesame).
  • +
  • El string resultante está basado en la codificación base64 (YWxhZGRpbjpvcGVuc2VzYW1l).
  • +
+ +
+

Nota: ¡La codificación Base64 no es equivalente a encriptación o hashing! Este método es igual de seguro a enviar las credenciales en un archivo plano de texto (la codificación base64 es reversible). Lo recomendable es utilizar HTTPS en conjunto a la autenticación básica.

+
+
+
+ +

Ejemplos

+ +
Authorization: Basic YWxhZGRpbjpvcGVuc2VzYW1l
+
+ +

Ver también HTTP authentication para ejemplos sobre cómo configurar servidores Apache o nginx para proteger su sitio con contraseña usando la autenticación básica HTTP.

+ +

Especificaciones

+ + + + + + + + + + + + + + + + + + +
EspecificaciónTítulo
{{RFC("7235", "Authorization", "4.2")}}HTTP/1.1: Authentication
{{RFC("7617")}}The 'Basic' HTTP Authentication Scheme
+ +

Ver también

+ + diff --git a/files/es/web/http/headers/cache-control/index.html b/files/es/web/http/headers/cache-control/index.html new file mode 100644 index 0000000000..64d33e766e --- /dev/null +++ b/files/es/web/http/headers/cache-control/index.html @@ -0,0 +1,241 @@ +--- +title: Cache-Control +slug: Web/HTTP/Headers/Cache-Control +tags: + - Cache-Control + - Encabezado general + - HTTP + - Referencia + - encabezado HTTP +translation_of: Web/HTTP/Headers/Cache-Control +--- +
{{HTTPSidebar}}
+ +

El encabezado HTTP Cache-Control especifica directivas (instrucciones) para almacenar temporalmente (caching) tanto en peticiones como en respuestas. Una directiva dada en una petición no significa que la misma directiva estar en la respuesta.

+ + + + + + + + + + + + + + + + +
Tipo de encabezado{{Glossary("General header", "Encabezado general")}}
{{Glossary("Forbidden header name", "nombre prohibido del encabezado")}}no
{{Glossary("CORS-safelisted response header", "Respuesta del encabezado CORS-safelisted")}}yes
+ +

Sintaxis

+ +

Las directivas para almacenamiento temporal siguen las siguientes reglas para ser válidas:

+ + + +

Directivas de solicitud de cache

+ +

Las directivas estándar Cache-Control que pueden ser usadas por el cliente en una solicitud HTTP.

+ +
Cache-Control: max-age=<seconds>
+Cache-Control: max-stale[=<seconds>]
+Cache-Control: min-fresh=<seconds>
+Cache-Control: no-cache
+Cache-Control: no-store
+Cache-Control: no-transform
+Cache-Control: only-if-cached
+
+ +

Directivas de solicitud de cache

+ +

Las diretivas estándar Cache-Control que pueden ser usadas por el servidor en una respuesta HTTP.

+ +
Cache-Control: must-revalidate
+Cache-Control: no-cache
+Cache-Control: no-store
+Cache-Control: no-transform
+Cache-Control: public
+Cache-Control: private
+Cache-Control: proxy-revalidate
+Cache-Control: max-age=<seconds>
+Cache-Control: s-maxage=<seconds>
+
+ +

Directivas de extensión de Cache-Control

+ +

Las directivas de extensión Cache-Control no forman parte de la base del documento estandar para cacheo HTTP. Revisé la tabla de compatibilidad para ver su soporte, los agentes de usuario que no reconocen estas directivas las ignorarán.

+ +
Cache-Control: immutable
+Cache-Control: stale-while-revalidate=<seconds>
+Cache-Control: stale-if-error=<seconds>
+
+ +

Directivas

+ +

Cacheabilidad

+ + + +
+
public
+
La respuesta puede estar almacenada en cualquier memoria cache, incluso si la petición normalmente no es cacheable.
+
private
+
La respuesta puede estar almacenada sólo por el cache de un navegador, incluso si la petición es normalmente no cacheable. Si no desea almacenar la respuesta en algún cache, use en su lugar no-store. Esta directiva no es efectiva previniendo el cacheo al almacenar respuestas.
+
no-cache
+
La respuesta puede estar almacenada por cualquier cache, incluso si la petición es normalmente no cacheable. Sin embargo, la respuesta almacenada DEBE siempre pasar por una validación con el servidor de origen antes de utilizarse, por lo tanto, no se puede usar no-cache en conjunción con immutable. Si no desea almacenar la respuesta en algún cache, se debe utilizar no-store en su lugar. Esta directiva no es efectiva para prevenir el cacheo al guardar la respuesta.
+
no-store
+
La respuesta puede no ser almacenada en cualquier cache. Aunque otras directivas pueden definirla, ésta es la única directiva que se necesita para prevenir el cacheo de respuestas en navegadores modernos. max-age=0 es implícito. Configurando must-revalidate no tiene sentido porque en orden para revalidar se necesita que la respuesta este almacenada en la cache, lo cual no-store previene.
+
No copie y pege el método específico para Intenet Explorer pre-check=0,post-check=0 si lo ve en línea porque es completamente ignorado, confirmado por el tweet de un desarrollador de Edge.
+
Deshabilitando Cache vía Cache-Control
+
+
no-store
+
+
+
no-cache,no-store,must-revalidate,pre-check=0,post-check=0
+
+
+ +

Expiración

+ +
+
max-age=<seconds>
+
La cantidad máxima de tiempo un recurso es considerado reciente. A diferencia de Expires, esta directiva es relativa a el tiempo de la petición.
+
s-maxage=<seconds>
+
Anula el encabezado max-age o el Expires, pero solo para caches compartidos (e.g., proxies). Ignorado por caches privados.
+
max-stale[=<seconds>]
+
Indica que el cliente aceptará una respuesta tardía. Un valor opciona en segundo indica el límite superior de estancamiento que el cliente aceptará.
+
min-fresh=<seconds>
+
Indica que el cliente quiere una respuesta que será reciente por al menos el número específico de segundos.
+
stale-while-revalidate=<seconds> {{Experimental_Inline}}
+
Indica que el cliente aceptará una respuesta tardía, mientras asíncronamente revisa por el fondo por una reciente. El valor de los segundos indica que tan largo es el cliente aceptará una respuesta estancada. Ver "Manteniendo las cosas frescas con stale-while-revalidate" para más información.
+
stale-if-error=<seconds> {{Experimental_Inline}}
+
Indica que el cliente aceptará una respuesta tardía si la revisión por una resúesta reciente falla. El valor de los segundos indica cuanto tiempo el cliente aceptará la respuesta tardía después de una expiración inicial.
+
+ +

Revalidación y recarga

+ +
+
must-revalidate
+
Indica que una vez un recurso se vuelve obsoleto, el cache no debe usar su copia obsoleta sin correctamente validar en el servidor de origen.
+
proxy-revalidate
+
Similar a must-revalidate, pero solo para caches compartidos (es decir, proxies). Ignorado por caches privados.
+
immutable
+
Indica que la respuesta del cuerpo no debería cambiar con el tiempo. El recurso, si no ha expirado, no ha cambiado en el servidor y por lo tanto el cliente no debería enviar una revalidación condicional por ello (es decir, If-None-Match o If-Modified-Since) para revisar por actualizaciones, incluso cuando el usuario explícitamente recarga la página. Los clientes que no son consientes de esta extensión las ignoran deacuerdo a la especificación HTTP. En Firefox, immutable solo es respetada en transacciones https://. Para más información, ver también este árticulo de un blog.
+
+ +

Otros

+ +
+
no-transform
+
No hay transformaciones o conversiones deberían hacerse al recurso. Los encabezados Content-Encoding, Content-Range, Content-Type no deben ser modificados por un proxy. Un proxy no transparente o una característica de un navegador como podría ser Google's Light Mode, por ejemplo, convierte entre formatos de imagenes con el motivo de guardar espacio del cache o para reducir la cantidad de tráfico en un enlace lento. La directiva no-transform no permite esto.
+
only-if-cached
+
Definida por el cliente para indicar "no usar la red" para la respuesta. la cache debería ya sea responder usando una respuesta almacenada, o responder con un código de estado 504. Encabezados condicionales como If-None-Match no deberían ser definidos. No hay efecto si only-if-cached es definido por un servidor como parte de una respuesta.
+
+ +

Ejemplos

+ +

Prevención de almacenamiento en caché

+ +

Para desactivar el almacenamiento en caché, puede enviar el siguiente encabezado de respuesta. Además, ver también los encabezados Expires y Pragma.

+ +
+
+
Cache-Control: no-store
+
+
+
+
Cache-Control: private,no-cache,no-store,max-age=0,must-revalidate,pre-check=0,post-check=0
+
+
+
+ +

Almacenando temporalmente recursos estáticos

+ +

Para los archivos de la aplicación que no cambian, generalmente se puede agregar almacenamiento en caché agresivo enviando el encabezado de respuesta a continuación. Esto incluye, por ejemplo, archivos estáticos servidos por la aplicación, como imágenes, archivos CSS y archivos JavaScript. Además, vea también, el encabezado Expires.

+ +
+
+
Cache-Control: public, max-age=604800, immutable
+
+
+
+ +

Requiriendo revalidación

+ +

Especificando no-cache o max-age=0 se indica a los clientes que se puede almacenar temporalmente un recurso y debe revalidarse en cada ocasión antes de utilizarse. Esto significa que las peticiones HTTP ocurren cada vez, pero se pueden saltar la descarga del cuerpo HTTP si el contenido es válido.

+ +
+
+
Cache-Control: no-cache
+Cache-Control: no-cache, max-age=0
+Cache-Control: no-cache, max-age=0, stale-while-revalidate=300
+
+
+
+ +

Especificaciones

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
EspecificacionesEstadoComentario
{{RFC(8246, "HTTP Immutable Responses")}}IETF RFC
{{RFC(7234, "Hypertext Transfer Protocol (HTTP/1.1): Caching")}}IETF RFC
{{RFC(5861, "HTTP Cache-Control Extensions for Stale Content")}}IETF RFCDefinición inicial
+ +

Compatibilidad de los navegadores

+ + + +

{{Compat("http.headers.Cache-Control")}}

+ +

Véase también

+ + diff --git a/files/es/web/http/headers/content-disposition/index.html b/files/es/web/http/headers/content-disposition/index.html new file mode 100644 index 0000000000..62c66192e7 --- /dev/null +++ b/files/es/web/http/headers/content-disposition/index.html @@ -0,0 +1,144 @@ +--- +title: Content-Disposition +slug: Web/HTTP/Headers/Content-Disposition +translation_of: Web/HTTP/Headers/Content-Disposition +--- +
{{HTTPSidebar}}
+ +
En una respuesta HTTP regular, el encabezado Content-Disposition indica si el contenido se espera que se muestre en línea en el navegador, esto es, como una o como parte de una página web, o como un archivo adjunto, que se puede descargar y guardar localmente.
+ +
 
+ +
En un cuerpo multipart/form-data, el encabezado general Content-Disposition puede ser utilizado en la subparte de un cuerpo multipartes para dar información acerca del campo al que aplica. La subparte es delimitada por el boundary (límite) definido en el encabezado {{HTTPHeader("Content-Type")}}. Cuando se utiliza en el propio cuerpo, Content-Disposition no tiene efecto.
+ +
 
+ +
El encabezado Content-Disposition está definido en el contexto de mensajes MIME para correos electrónicos, pero sólo un subconjuto de los parámetros posibles aplican a formularios HTTP y peticiones {{HTTPMethod("POST")}}. Sólo el valor form-data, como las directivas opcionales name and filename, pueden ser utilizadas en el contexto HTTP.
+ +

 

+ + + + + + + + + + + + +
Tipo de encabezado{{Glossary("Response header")}} (para el cuerpo principal)
+ {{Glossary("General header")}} (para una subparte de un cuerpo multipartes)
{{Glossary("Forbidden header name")}}no
+ +

 

+ +

Sintaxis

+ +

Como encabezado de respuesta para cuerpo principal

+ +

El primer parámetro en el contexto HTTP o es inline (valor predeterminado, indicando que puede ser mostrado dentro de una página web, o como la página web) o attachment (indicando que será descargado; la mayoría de los navegadores mostrando un diálogo 'Guardar como', prellenado con el valor del parámetro filename, en caso de estar presente).

+ +
Content-Disposition: inline
+Content-Disposition: attachment
+Content-Disposition: attachment; filename="filename.jpg"
+ +

Como encabezado para un cuerpo multipartes

+ +

El primer parámetro en el contexto HTTP siempre es form-data; parámetros adicionales son insensibles a mayúsculas y tienen argumentos que usan sintaxis de textos entre comillas después del signo de '='. Múltiples parámetros se separan por punto y coma (';').

+ +
Content-Disposition: form-data
+Content-Disposition: form-data; name="fieldName"
+Content-Disposition: form-data; name="fieldName"; filename="filename.jpg"
+ +

Directivas

+ +
+
name
+
Es seguida de un texto que contiene el nombre del campo de HTML en el formulario a la que el contenido de la subparte refiere. Cuando se usan múltiples archivos en el mismo campo (por ejemplo, el atributo {{htmlattrxref("multiple", "input")}} de un elemento {{HTMLElement("input","<input type=file>")}}), puede haber varias subpartes con el mismo nombre.
+ Un name con valor de '_charset_' indica que la parte no es un campo HTML, sino el conjunto de caracteres predeterminado para partes sin información explícita sobre su conjunto de caracteres.
+
filename
+
+

Es seguida de un texto que contiene el nombre original del archivo transmitido. Siempre es opcional y no debe ser utilizado a ciegas por la aplicación: información sobre la ruta  debe ser despojada, y se debe realizar una conversión a las reglas del sistema de archivos del servidor. Este parámetro provee mayormente información indicativa. Cuando se usa en combinación con Content-Disposition: attachment, es utilizado como el nombre de archivo predeterminado en caso de que se presente al usuario un diálogo de 'Guardar como'.

+
+
filename*
+
+

Los parámetros filename y filename* difieren únicamente en que filename* utiliza encodeado definido en RFC 5987. Cuando ambos están presentes en un valor de campo de encabezado simple, filename* es preferido sobre filename cuando ambos están presentes y entendidos.

+
+
+ +

Ejemplos

+ +

Una respuesta generando el diálogo 'Guardar como':

+ +
200 OK
+Content-Type: text/html; charset=utf-8
+Content-Disposition: attachment; filename="genial.html"
+Content-Length: 22
+
+<HTML>Guárdame!</HTML>
+
+
+ +

Este archivo simple de HTML será guardado como una descarga regular en lugar de mostrarse en el navegador. La mayoría de los navegadores propondrá guardarlo como genial.html ya que es el nombre (predeterminado).

+ +

Un ejemplo de un formulario HTML, publicado usando el formato multipart/form-data que hace uso del encabezado Content-Disposition:

+ +
POST /test.html HTTP/1.1
+Host: example.org
+Content-Type: multipart/form-data;boundary="boundary"
+
+--boundary
+Content-Disposition: form-data; name="campo1"
+
+valor1
+--boundary
+Content-Disposition: form-data; name="campo2"; filename="ejemplo.txt"
+
+valor2
+--boundary--
+ +

Especificaciones

+ + + + + + + + + + + + + + + + + + + + +
EspecificaciónTítulo
{{RFC("7578")}}Returning Values from Forms: multipart/form-data (Retornando Valores desde Formularios: multipart/form-data)
{{RFC("6266")}}Use of the Content-Disposition Header Field in the Hypertext Transfer Protocol (HTTP) (Uso del campo de encabezado Content-Disposition en HTML)
{{RFC("2183")}}Communicating Presentation Information in Internet Messages: The Content-Disposition Header Field (Comunicando Información de Presentación en Mensajes de Internet: el Campo de Encabezado Content-Disposition)
+ +

Compatibilidad con navegadores

+ + + +

{{Compat("http.headers.Content-Disposition")}}

+ +

Notas de compatibilidad

+ + + +

Ver también

+ + diff --git a/files/es/web/http/headers/content-encoding/index.html b/files/es/web/http/headers/content-encoding/index.html new file mode 100644 index 0000000000..2c868ca5a6 --- /dev/null +++ b/files/es/web/http/headers/content-encoding/index.html @@ -0,0 +1,97 @@ +--- +title: Content-Encoding +slug: Web/HTTP/Headers/Content-Encoding +tags: + - Cabecera + - Referencia +translation_of: Web/HTTP/Headers/Content-Encoding +--- +
{{HTTPSidebar}}
+ +

La cabecera Content-Encoding es usada para comprimir el media-type. Cuando está presente, su valor indica qué codificación de contenido adicional ha sido aplicada al cuerpo de la entidad. Permite al cliente saber cómo decodificar para obtener el media-type referido por la cabecera Content-Type.

+ +

Se recomienda comprimir los datos tanto como sea posible y por lo tanto utilizar este campo, pero algunos tipos de recursos, como imágenes JPEG, ya están comprimidos. A veces, el uso de compresión adicional no reduce el tamaño de la petición e incluso puede hacer que la petición sea más larga.

+ + + + + + + + + + + + +
Header type{{Glossary("Entity header")}}
{{Glossary("Forbidden header name")}}no
+ +

Sintaxis

+ +
Content-Encoding: gzip
+Content-Encoding: compress
+Content-Encoding: deflate
+Content-Encoding: identity
+Content-Encoding: br
+
+ +

Directivas

+ +
+
gzip
+
Un formato que usa Lempel-Ziv coding (LZ77), con un CRC de 32 bits. Este es originalmente el formato del programa gzip de UNIX . El estándar HTTP/1.1 también recomienda que los servidores que soporten esta codificación también deberían reconocer  x-gzip como un alias por motivos de compatibilidad.
+
compress
+
Un formato que usa el algoritmo Lempel-Ziv-Welch (LZW). El nombre viene del programa compress de UNIX , que implementó este algoritmo.
+ Al igual que el programa compress, el cual ha desaparecido de la mayoría de distribuciones UNIX, esta codificación apenas es utilizada por los navegadores de hoy día, en parte debido a un problema de patente (la cual expiró en 2003).
+
deflate
+
Usa la estructura zlib (definida en RFC 1950), con el algoritmo de compresión deflate (definido en RFC 1951).
+
identity
+
Indica la función de identidad (es decir, sin compresión ni modificación). Este símbolo, excepto si se especifica explícitamente, siempre se considera aceptable.
+
br
+
Un formato que usa el algoritmo Brotli.
+
+ +

Ejemplos

+ +

Comprimiendo con gzip

+ +

En el lado del cliente, puede detectar una lista de esquemas de compresión que serán enviados en una petición HTTP. La cabecera {{HTTPHeader("Accept-Encoding")}} se utiliza para la negociación de la codificación del contenido.

+ +
Accept-Encoding: gzip, deflate
+ +

El servidor responde con el esquema usado, indicado por la cabecera de respuesta Content-Encoding.

+ +
Content-Encoding: gzip
+ +

Ten en cuenta que el servidor no está obligado a usar algun método de compresión. La compresión depende directamente de la configuración del servidor y los módulos que utilice.

+ +

Especificaciones

+ + + + + + + + + + + + + + + + +
EspecificaciónTítulo
{{RFC("7231", "Content-Encoding", "3.1.2.2")}}Hypertext Transfer Protocol (HTTP/1.1): Semántica y Contenido
http://www.ietf.org/id/draft-alakuijala-brotliFormato de datos comprimidos Brotli
+ +

Compatibilidad con los navegadores

+ + + +

{{Compat("http/headers/content-encoding")}}

+ +

Ver también

+ + diff --git a/files/es/web/http/headers/content-length/index.html b/files/es/web/http/headers/content-length/index.html new file mode 100644 index 0000000000..0521cf798e --- /dev/null +++ b/files/es/web/http/headers/content-length/index.html @@ -0,0 +1,60 @@ +--- +title: Content-Length +slug: Web/HTTP/Headers/Content-Length +translation_of: Web/HTTP/Headers/Content-Length +--- +
{{HTTPSidebar}}
+ +

El encabezado de entidad Content-Length indica el tamaño de la entidad-cuerpo, en bytes, enviado al destinatario.

+ + + + + + + + + + + + +
Tipo de cabecera{{Glossary("Entity header")}}
{{Glossary("Nombre de cabecera prohibido")}}si
+ +

Sintaxis

+ +
Content-Length: <longitud>
+
+ +

Directivas

+ +
+
<length>
+
La longitud en número decimal de octetos.
+
+ +

Especificaciones

+ + + + + + + + + + + + +
EspecificaciónTítulo
{{RFC("7230", "Content-Length", "3.3.2")}}Protocolo de Transferencia de Hipertexto (HTTP/1.1): Sintaxis y enrutamiento de mensajes
+ +

Compatibilidad con navegadores

+ + + +

{{Compat("http.headers.Content-Length")}}

+ +

Véase también

+ + diff --git a/files/es/web/http/headers/content-location/index.html b/files/es/web/http/headers/content-location/index.html new file mode 100644 index 0000000000..eecadf51e5 --- /dev/null +++ b/files/es/web/http/headers/content-location/index.html @@ -0,0 +1,156 @@ +--- +title: Content-Location +slug: Web/HTTP/Headers/Content-Location +translation_of: Web/HTTP/Headers/Content-Location +--- +
{{HTTPSidebar}}
+ +

La cabecera Content-Location indica una ubicación alternativa para los datos devueltos. Su principal uso es indicar la URL de un recurso transmitido y que ha resultado de una negociación de contenido.

+ +

Las cabeceras {{HTTPHeader("Location")}} y Content-Location son diferentes. Location indica la URL de una redirección, mientras que Content-Location indica la URL directa a ser utilizada para acceder al recurso, sin necesidad de realizar negociación de contenido en el futuro. Mientras que Location es una cabecera asociada con la respuesta, Content-Location está asociada con los datos devueltos. Esta distinción puede parecer abstracta sin ver algunos ejemplos.

+ + + + + + + + + + + + +
Header type{{Glossary("Entity header")}}
{{Glossary("Forbidden header name")}}no
+ +

Sintaxis

+ +
Content-Location: <url>
+
+ +

Directivas

+ +
+
<url>
+
Una URL relativa o absoluta (a la URL de la petición).
+
+ +

Ejemplos

+ +

Solicitando datos de un servidor en distintos formatos

+ +

Suponga que la API de un sitio web puede devolver datos en los formatos {{glossary("JSON")}}, {{glossary("XML")}}, o CSV. Si la URL de un documento particular se encuentra en https://example.com/documents/foo, el sitio web podría retornar distintas URLs en la cabecera Content-Location dependiendo de la cabecera {{HTTPHeader("Accept")}} enviada en la petición: 

+ + + + + + + + + + + + + + + + + + + + + + +
Request headerResponse header
Accept: application/json, text/jsonContent-Location: /documents/foo.json
Accept: application/xml, text/xmlContent-Location: /documents/foo.xml
Accept: text/plain, text/*Content-Location: /documents/foo.txt
+ +

Estas URLs son ejemplos — el sitio web podría servir los distintos tipos de ficheros con cualquier patrón de URL que desee, por ejemplo, por medio de un parámetro en la query: /documents/foo?format=json, /documents/foo?format=xml, y así sucesivamente.

+ +

De esa forma el cliente podrÍa recordar que la versión en formato JSON está disponible en esa URL particular, saltándose el paso de la negociación de contenido la próxima vez que solicite ese documento.

+ +

El servidor podría también considerar otras cabeceras de negociación de contenido, tales como {{HTTPHeader("Accept-Language")}}.

+ +

Apuntando a un nuevo documento (HTTP 201 Created)

+ +

Suponga que está creando una nueva entrada de un blog, a través de la API del sitio web:

+ +
PUT /new/post
+Host: example.com
+Content-Type: text/markdown
+
+# Mi primera entrada de blog!
+
+Hice esto a través de la API de `example.com`'. Espero que funcione.
+
+ +

El sitio devuelve un mensaje genérico de éxito confirmando que el post ha sido publicado. El servidor especifica donde se encuentra la nueva entrada utilizando Content-Location:

+ +
HTTP/1.1 201 Created
+Content-Type: text/plain; charset=utf-8
+Content-Location: /my-first-blog-post
+
+✅ Success!
+
+ +

Indicating the URL of a transaction's result

+ +

Digamos que tiene un formulario <form>  para el envío de dinero a otro usuario de un sitio web.

+ +
<form action="/enviar-pago" method="post">
+  <p>
+    <label>A quien desea enviar dinero?
+      <input type="text" name="destinatario">
+    </label>
+  </p>
+
+  <p>
+    <label>Cuanto dinero?
+      <input type="number" name="cantidad">
+    </label>
+  </p>
+
+  <button type="submit">Enviar dinero</button>
+</form>
+
+ +

Cuando el formulario es enviado, el sitio web genera un recibo o comprobante de la transacción. El servidor podría utilizar la cabecera Content-Location para indicar la URL de ese comprobante para un acceso futuro.

+ +
HTTP/1.1 200 OK
+Content-Type: text/html; charset=utf-8
+Content-Location: /mis-recibos/38
+
+<!doctype html>
+(Lots of HTML…)
+
+<p>Ha enviado $38.00 a UsuarioFicticio.</p>
+
+(Lots more HTML…)
+
+ +

Especificaciones

+ + + + + + + + + + + + + + +
EspecificaciónTítulo
{{RFC("7231", "Content-Location", "3.1.4.2")}}Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content
+ +

Compatibilidad en navegadores

+ + + +

{{Compat("http.headers.Content-Location")}}

+ +

Ver también

+ + diff --git a/files/es/web/http/headers/content-security-policy/index.html b/files/es/web/http/headers/content-security-policy/index.html new file mode 100644 index 0000000000..5659403d96 --- /dev/null +++ b/files/es/web/http/headers/content-security-policy/index.html @@ -0,0 +1,252 @@ +--- +title: Content-Security-Policy +slug: Web/HTTP/Headers/Content-Security-Policy +tags: + - CSP + - HTTP + - Reference + - header +translation_of: Web/HTTP/Headers/Content-Security-Policy +--- +
{{HTTPSidebar}}
+ +
+ +


+ La cabecera HTTP Content-Security-Policy  en la respuesta permite a los administradores de un sitio web controlar los recursos que el User-Agent puede cargar a una pagina. Con algunas (Poquísimas) excepciones, las políticas implican principalmente especificar el servidor de origen la protección de puntos finales del script. Esto ayuda a protegerse contra ataques Cross-site scripting ({{Glossary("XSS")}}).

+ +
+
+
+ +

Para mas información, ve también este articulo en Content Security Policy (CSP).

+ +
+ + + + + + + + + + + + +
Tipo de cabecera{{Glossary("Response header")}}
{{Glossary("Forbidden header name")}}no
+ +

Sintaxis

+ +
Content-Security-Policy: <policy-directive>; <policy-directive>
+
+ +

Directivas

+ +

{{Glossary("Fetch directive", "Fetch directives")}}

+ +

"Fetch directives" controla la ubicación o ubicaciones desde la cual se pueden cargar ciertos tipos de recursos

+ +

Lista de Content Security Policy Fetch directives

+ +
+
{{CSP("child-src")}}
+
Define los origenes válidos para web workers y contextos de navegación anidados cargados usando elementos como {{HTMLElement("frame")}} and {{HTMLElement("iframe")}}. +
+

En lugar de child-src, los autores quienes deseen regular los contextos de navegación anidados y "workers" deberían usar las directivas {{CSP("frame-src")}} y {{CSP("worker-src")}}, respectivamente.

+
+
+
{{CSP("connect-src")}}
+
Restringe las URLs que pueden ser cargados usando scripts.
+
{{CSP("default-src")}}
+
Serves as a fallback for the other {{Glossary("Fetch directive", "fetch directives")}}.
+
{{CSP("font-src")}}
+
Especifica origenes válidos para las fuentes cargadas usando {{cssxref("@font-face")}}.
+
{{CSP("frame-src")}}
+
Especifica origenes válidos para contextos de navageción anidada cargados usando elementos como {{HTMLElement("frame")}} y  {{HTMLElement("iframe")}}.
+
{{CSP("img-src")}}
+
Especifica origenes válidos de imágenes y favicons.
+
{{CSP("manifest-src")}}
+
Especifica origenes válidos de archivos de manifiesto de una aplicación.
+
{{CSP("media-src")}}
+
Especifica origenes válidos para carga de archivos usando elementos como {{HTMLElement("audio")}} , {{HTMLElement("video")}} y {{HTMLElement("track")}}.
+
{{CSP("object-src")}}
+
Specifies valid sources for the {{HTMLElement("object")}}, {{HTMLElement("embed")}}, and {{HTMLElement("applet")}} elements.
+
Elements controlled by object-src are perhaps coincidentally considered legacy HTML elements and aren't recieving new standardized features (such as the security attributes sandbox or allow for <iframe>). Therefore it is recommended to restrict this fetch-directive (e.g. explicitly set object-src 'none' if possible).
+
{{CSP("prefetch-src")}}
+
Specifies valid sources to be prefetched or prerendered.
+
{{CSP("script-src")}}
+
Specifies valid sources for JavaScript.
+
{{CSP("style-src")}}
+
Specifies valid sources for stylesheets.
+
{{CSP("webrtc-src")}} {{experimental_inline}}
+
Specifies valid sources for WebRTC connections.
+
{{CSP("worker-src")}}
+
Specifies valid sources for {{domxref("Worker")}}, {{domxref("SharedWorker")}}, or {{domxref("ServiceWorker")}} scripts.
+
+ +

{{Glossary("Document directive", "Document directives")}}

+ +

Document directives govern the properties of a document or worker environment to which a policy applies.

+ +
+
{{CSP("base-uri")}}
+
Restricts the URLs which can be used in a document's {{HTMLElement("base")}} element.
+
{{CSP("plugin-types")}}
+
Restricts the set of plugins that can be embedded into a document by limiting the types of resources which can be loaded.
+
{{CSP("sandbox")}}
+
Enables a sandbox for the requested resource similar to the {{HTMLElement("iframe")}} {{htmlattrxref("sandbox", "iframe")}} attribute.
+
{{CSP("disown-opener")}} {{obsolete_inline}}
+
Ensures a resource will disown its opener when navigated to.
+
+ + + +

Navigation directives govern to which location a user can navigate to or submit a form to, for example.

+ +
+
{{CSP("form-action")}}
+
Restricts the URLs which can be used as the target of a form submissions from a given context.
+
{{CSP("frame-ancestors")}}
+
Specifies valid parents that may embed a page using {{HTMLElement("frame")}}, {{HTMLElement("iframe")}}, {{HTMLElement("object")}}, {{HTMLElement("embed")}}, or {{HTMLElement("applet")}}.
+
{{CSP("navigate-to")}} {{experimental_inline}}
+
Restricts the URLs to which a document can navigate by any means (a, form, window.location, window.open, etc.)
+
+ +

{{Glossary("Reporting directive", "Reporting directives")}}

+ +

Reporting directives control the reporting process of CSP violations. See also the {{HTTPHeader("Content-Security-Policy-Report-Only")}} header.

+ +
+
{{CSP("report-uri")}} {{obsolete_inline}}
+
Instructs the user agent to report attempts to violate the Content Security Policy. These violation reports consist of {{Glossary("JSON")}} documents sent via an HTTP POST request to the specified URI. +
+

Though the {{CSP("report-to")}} directive is intended to replace the deprecated report-uri directive, {{CSP("report-to")}} isn’t supported in most browsers yet. So for compatibility with current browsers while also adding forward compatibility when browsers get {{CSP("report-to")}} support, you can specify both report-uri and {{CSP("report-to")}}:

+ +
Content-Security-Policy: ...; report-uri https://endpoint.example.com; report-to groupname
+ +

In browsers that support {{CSP("report-to")}}, the report-uri directive will be ignored.

+
+
+
{{CSP("report-to")}} {{experimental_inline}}
+
Fires a SecurityPolicyViolationEvent.
+
+ +

Other directives

+ +
+
{{CSP("block-all-mixed-content")}}
+
Prevents loading any assets using HTTP when the page is loaded using HTTPS.
+
{{CSP("referrer")}} {{obsolete_inline}}
+
Used to specify information in the referer (sic) header for links away from a page. Use the {{HTTPHeader("Referrer-Policy")}} header instead.
+
{{CSP("require-sri-for")}}
+
Requires the use of {{Glossary("SRI")}} for scripts or styles on the page.
+
+ +
+
{{CSP("trusted-types")}} {{experimental_inline}}
+
Used to specify a whitelist of Trusted Types policies (Trusted Types allows applications to lock down DOM XSS injection sinks to only accept non-spoofable, typed values in place of strings).
+
+ +
+
{{CSP("upgrade-insecure-requests")}}
+
Instructs user agents to treat all of a site's insecure URLs (those served over HTTP) as though they have been replaced with secure URLs (those served over HTTPS). This directive is intended for web sites with large numbers of insecure legacy URLs that need to be rewritten.
+
+ +

CSP in workers

+ +

Workers en general no se rigen por las politicas de seguridad de contenido de el documento (o padre del worker) que los creó. To specify a content security policy for the worker, set a Content-Security-Policy response header for the request which requested the worker script itself.

+ +

The exception to this is if the worker script's origin is a globally unique identifier (for example, if its URL has a scheme of data or blob). In this case, the worker does inherit the content security policy of the document or worker that created it.

+ +

Multiple content security policies

+ +

CSP allows multiple policies being specified for a resource, including via the Content-Security-Policy header, the {{HTTPHeader("Content-Security-Policy-Report-Only")}} header and a {{HTMLElement("meta")}} element.

+ +

You can use the Content-Security-Policy header more than once like in the example below. Pay special attention to the {{CSP("connect-src")}} directive here. Even though the second policy would allow the connection, the first policy contains connect-src 'none'. Adding additional policies can only further restrict the capabilities of the protected resource, which means that there will be no connection allowed and, as the strictest policy, connect-src 'none' is enforced.

+ +
Content-Security-Policy: default-src 'self' http://example.com;
+                         connect-src 'none';
+Content-Security-Policy: connect-src http://example.com/;
+                         script-src http://example.com/
+ +

Ejemplos

+ +

Example: Disable unsafe inline/eval, only allow loading of resources (images, fonts, scripts, etc.) over https:

+ +
// header
+Content-Security-Policy: default-src https:
+
+// meta tag
+<meta http-equiv="Content-Security-Policy" content="default-src https:">
+
+ +

Example: Pre-existing site that uses too much inline code to fix but wants to ensure resources are loaded only over https and disable plugins:

+ +
Content-Security-Policy: default-src https: 'unsafe-eval' 'unsafe-inline'; object-src 'none'
+ +

Example: Don't implement the above policy yet; instead just report violations that would have occurred:

+ +
Content-Security-Policy-Report-Only: default-src https:; report-uri /csp-violation-report-endpoint/
+ +

See Mozilla Web Security Guidelines for more examples.

+ +

Espeficicaciones

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{specName("CSP 3.0")}}{{Spec2('CSP 3.0')}}Adds disown-opener, manifest-src, navigate-to, report-to, strict-dynamic, worker-src. Undeprecates frame-src. Deprecates report-uri in favor if report-to.
{{specName("Mixed Content")}}{{Spec2('Mixed Content')}}Adds block-all-mixed-content.
{{specName("Subresource Integrity")}}{{Spec2('Subresource Integrity')}}Adds require-sri-for.
{{specName("Upgrade Insecure Requests")}}{{Spec2('Upgrade Insecure Requests')}}Adds upgrade-insecure-requests.
{{specName("CSP 1.1")}}{{Spec2('CSP 1.1')}}Adds base-uri, child-src, form-action, frame-ancestors, plugin-types, referrer, and report-uri. Deprecates frame-src.
{{specName("CSP 1.0")}}{{Spec2('CSP 1.0')}}Defines connect-src, default-src, font-src, frame-src, img-src, media-src, object-src, report-uri, sandbox, script-src, and style-src.
+ +

Compatibilidad con navegadores

+ + + +

{{Compat("http.headers.csp.Content-Security-Policy")}}

+ +

Mirar tambien

+ + diff --git a/files/es/web/http/headers/content-type/index.html b/files/es/web/http/headers/content-type/index.html new file mode 100644 index 0000000000..3073616c56 --- /dev/null +++ b/files/es/web/http/headers/content-type/index.html @@ -0,0 +1,111 @@ +--- +title: Content-Type +slug: Web/HTTP/Headers/Content-Type +translation_of: Web/HTTP/Headers/Content-Type +--- +
{{HTTPSidebar}}
+ +

Content-Type es la propiedad de cabecera (header) usada para indicar el  {{Glossary("MIME type","media type")}} del recurso.

+ +

Content-Type dice al cliente que tipo de contenido será retornado. Browsers will do MIME sniffing in some cases and will not necessarily follow the value of this header; to prevent this behavior, the header {{HTTPHeader("X-Content-Type-Options")}} can be set to nosniff.

+ +

En solicitudes (tales como {{HTTPMethod("POST")}} o {{HTTPMethod("PUT")}}), el cliente indica al servidor que tipo de dato es enviado actualmente.

+ + + + + + + + + + + + + + + + +
Header type{{Glossary("Entity header")}}
{{Glossary("Forbidden header name")}}no
{{Glossary("Simple response header", "CORS-safelisted response-header")}}si
+ +

Sintaxis

+ +
Content-Type: text/html; charset=utf-8
+Content-Type: multipart/form-data; boundary=something
+
+ +

Directivas

+ +
+
media-type
+
El MIME type de el recurso o el dato.
+
charset
+
La codificación de caracteres.
+
boundary
+
Para entidades de tipo multipart la directiva boundary es obligatoria. Ella consiste en una secuencia de 1 a 70 caracteres de un conjunto conocido por su robustez en pasarelas de correo electrónico, y no pueden terminar con espacios en blanco. Es usada para encapsular los limites de los mensajes de múltiples partes.
+
+ +

Ejemplos

+ +

Content-Type in HTML forms

+ +

En una solicitud {{HTTPMethod("POST")}} , que resulta del envio de un formulario html, el Content-Type de la solicitud es especificado como un atributo enctype del elemento {{HTMLElement("form")}} .

+ +
<form action="/" method="post" enctype="multipart/form-data">
+  <input type="text" name="description" value="some text">
+  <input type="file" name="myFile">
+  <button type="submit">Submit</button>
+</form>
+
+ +

La solicitud se visualiza algo como esto (si tienes poco interes en los headers omite esto)

+ +
POST /foo HTTP/1.1
+Content-Length: 68137
+Content-Type: multipart/form-data; boundary=---------------------------974767299852498929531610575
+
+---------------------------974767299852498929531610575
+Content-Disposition: form-data; name="description"
+
+some text
+---------------------------974767299852498929531610575
+Content-Disposition: form-data; name="myFile"; filename="foo.txt"
+Content-Type: text/plain
+
+(content of the uploaded file foo.txt)
+---------------------------974767299852498929531610575
+
+ +

Especificaciones

+ + + + + + + + + + + + + + + + +
SpecificationTitle
{{RFC("7233", "Content-Type in multipart", "4.1")}}Hypertext Transfer Protocol (HTTP/1.1): Range Requests
{{RFC("7231", "Content-Type", "3.1.1.5")}}Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content
+ +

Compatibilidad de navegador

+ + + +

{{Compat("http.headers.Content-Type")}}

+ +

Más sobre

+ + diff --git a/files/es/web/http/headers/cookie/index.html b/files/es/web/http/headers/cookie/index.html new file mode 100644 index 0000000000..36cff2d8aa --- /dev/null +++ b/files/es/web/http/headers/cookie/index.html @@ -0,0 +1,74 @@ +--- +title: Cookie +slug: Web/HTTP/Headers/Cookie +tags: + - Cookies + - encabezado + - solicitud +translation_of: Web/HTTP/Headers/Cookie +--- +
{{HTTPSidebar}}
+ +
El encabezado Cookie de una solicitud HTTP contiene cookies HTTP almacenadas y enviadas previamente por el servidor con el encabezado (header) {{HTTPHeader("Set-Cookie")}}
+ +
 
+ +
Los encabezados Cookie puede ser omitidos por completo, si las preferencias de privacidad del navegador están configuradas para bloquearlos, por ejemplo.
+ +
 
+ + + + + + + + + + + + +
Header type{{Glossary("Request header")}}
{{Glossary("Forbidden header name")}}yes
+ +

Sintaxis

+ +
Cookie: <cookie-lista>
+Cookie: nombre=valor
+Cookie: nombre=valor; nombre2=valor2...nombreN=valorN;
+ +
+
<cookie-lista>
+
Una lista de pares nombre:valor definidos como <nombre-de-cookie=<valor-de-cookie>. Los pares en la lista son separados por un punto y coma seguido de un espacio ('; ').
+
+ +

Ejemplos

+ +
Cookie: PHPSESSID=298zf09hf012fh2; csrftoken=u32t4o3tb3gg43; _gat=1;
+ +

Especificaciones

+ + + + + + + + + + + + +
SpecificationTitle
{{RFC("6265", "Cookie", "5.4")}}HTTP State Management Mechanism
+ +

Compatibilidad en navegadores

+ + + +

{{Compat("http.headers.Cookie")}}

+ +

Ver también

+ + diff --git a/files/es/web/http/headers/cross-origin-resource-policy/index.html b/files/es/web/http/headers/cross-origin-resource-policy/index.html new file mode 100644 index 0000000000..7aa86a84d9 --- /dev/null +++ b/files/es/web/http/headers/cross-origin-resource-policy/index.html @@ -0,0 +1,68 @@ +--- +title: Cross-Origin-Resource-Policy +slug: Web/HTTP/Headers/Cross-Origin-Resource-Policy +tags: + - HTTP + - Referencia + - Respuesta de encabezado + - encabezado + - encabezado HTTP +translation_of: Web/HTTP/Headers/Cross-Origin-Resource-Policy +--- +
{{HTTPSidebar}}
+ +

La respuesta del encabezado HTTP Cross-Origin-Resource-Policy transmite un deseo de que el navegador bloquee peticiones no-cors cross-origin/cross-site al recurso dado

+ + + + + + + + + + + + +
Tipo de encabezado{{Glossary("Response header", "Respuesta del encabezado")}}
{{Glossary("Forbidden header name", "Nombre prohibido del encabezado")}}no
+ +

Sintaxis

+ +
Cross-Origin-Resource-Policy: same-site | same-origin | cross-origin
+
+ +

Ejemplos

+ +

La respuesta de encabezado debajo puede causar que agentes de usuario compatibles desabiliten peticiones cross-origin no-cors:

+ +
Cross-Origin-Resource-Policy: same-origin
+
+ +

Especificaciones

+ + + + + + + + + + + + + + +
EspecificaciónEstadoComentario
{{SpecName("Fetch", '#cross-origin-resource-policy-header')}}{{Spec2("Fetch", '#cross-origin-resource-policy-header')}}Definición inicial
+ +

Compatibilidad de los navegadores

+ + + +

{{Compat("http.headers.Cross-Origin-Resource-Policy")}}

+ +

Ver también

+ + diff --git a/files/es/web/http/headers/etag/index.html b/files/es/web/http/headers/etag/index.html new file mode 100644 index 0000000000..7e8b0ebe5d --- /dev/null +++ b/files/es/web/http/headers/etag/index.html @@ -0,0 +1,98 @@ +--- +title: ETag +slug: Web/HTTP/Headers/ETag +translation_of: Web/HTTP/Headers/ETag +--- +
{{HTTPSidebar}}
+ +

El encabezado de respuesta de HTTP ETag es un identificador para una versión específica de un recurso.  Permite a la memoria caché ser más eficiente, y ahorrar ancho de banda, en tanto que un servidor web no necesita enviar una respuesta completa si el contenido no ha cambiado.  Por otro lado, si el contenido cambió, los etags son útiles para ayudar a prevenir actualizaciones simultáneas de un recurso de sobre-escribirlo por otro ("colisiones en el aire").

+ +

Si el recurso en una URL dada cambia, un valor Etag debe ser generado.  De esta forma los Etags son muy similares a las huellas digitales y pueden también usarse para propósitos de rastreo por algunos servidores.  Un comparativo de ellos permite rápidamente determinar cuándo dos representaciones de un recurso son las mismas, pero podrían también configurarse para persistir indefinidamente por un servidor en rastreo.

+ + + + + + + + + + + + +
Tipo de Encabezado{{Glossary("Response header")}}
{{Glossary("Forbidden header name")}}no
+ +

Sintaxis

+ +
ETag: W/"<valor_etag>"
+ETag: "<valor_etag>"
+
+ +

Directivas

+ +
+
W/ {{optional_inline}}
+
'W/' (sensible a mayúsculas) indica que se usa un validador débil.  Los validadores débiles son fáciles de generar pero son menos útiles para realizar comparativos.  Los validadores fuertes son ideales para realizar comparativos pero pueden ser muy difíciles de generar  de forma eficiente.  Los valores Etag débiles de dos representaciones de los mismos recursos podrían ser semánticamente equivalentes, pero no idénticos byte por byte. Esto significa que los Etag débiles previenen el almacenamiento en caché cuando el range request por byte es usado, a su vez los Etag fuertes permiten que los range request puedan utilizar el almacenamiendo en caché.
+
"<valor_etag>"
+
Las Etiquetas de Entidad (ETags) representan de forma única a los recursos.  Son una cadena de caracteres ASCII puestas entre comillas dobles (Como "675af34563dc-tr34").  El método por el cual se generan los valores ETag no está especificado. Muchas veces, se usa una etiqueda del contenido, una etiqueta de la fecha y hora de la última modificación, o sólo una revisión.  Por ejemplo, MDN usa una etiqueda de dígitos hexadecimales para el contenido wiki.
+
+ +

Ejemplos

+ +
ETag: "33a64df551425fcc55e4d42a148795d9f25f89d4"
+ETag: W/"0815"
+ +

Evitando las colisiones en el aire

+ +

Con la ayuda del ETag y los encabezados {{HTTPHeader("If-Match")}} se puede ser capaz de detectar las colisiones de edición en el aire.

+ +

Por ejemplo cuando se edita MDN, el contenido wiki actual es etiquetado y puesto en un Etag en la respuesta:

+ +
ETag: "33a64df551425fcc55e4d42a148795d9f25f89d4"
+ +

Cuando se guarda los cambios de una página a una página wiki (datos posteados), la petición  {{HTTPMethod("POST")}} contendrá el encabezado que contiene los valores ETag para revisar la frescura entre ellas.

+ +
If-Match: "33a64df551425fcc55e4d42a148795d9f25f89d4"
+ +

Si las etiquetas no concuerdan, significa que el documento ha sido editado de por sí y se lanza un error  {{HTTPStatus("412")}} Precondition Failed.

+ +

Caching de los recursos invariados

+ +

Otro caso típico del uso del encabezado ETag es el cacheo de recursos que no han variado.  Si un usuario visita una URL dada nuevamente (la que tiene un conjunto ETag), y está viciado, es decir que es muy viejo para considerarlo usable, el cliente enviará el valor de su ETag a través de un campo de encabezado {{HTTPHeader("If-None-Match")}}:

+ +
If-None-Match: "33a64df551425fcc55e4d42a148795d9f25f89d4"
+ +

El servidor compara el ETag del cliente (enviado con un If-None-Match) con el ETag para su versión actual del recurso y si ambos valores concuerdan (esto es, el recurso no ha cambiado), el servidor envió un estado {{HTTPStatus("304")}} Not Modified, sin ningún cuerpo, lo cual le dice al cliente que la versión cacheada de la respuesta todavía es buena para usar (refrescar).

+ +

Especificaciones

+ + + + + + + + + + + + +
EspecificaciónTítulo
{{RFC("7232", "ETag", "2.3")}}Protocolo de Transferencia por Hipertexto (HTTP/1.1): Peticiones Condicionales
+ +

Compatibilidad con Navegadores

+ + + +

{{Compat("http.headers.ETag")}}

+ +

Vea también

+ + diff --git a/files/es/web/http/headers/expires/index.html b/files/es/web/http/headers/expires/index.html new file mode 100644 index 0000000000..80c39c61f6 --- /dev/null +++ b/files/es/web/http/headers/expires/index.html @@ -0,0 +1,81 @@ +--- +title: Expires +slug: Web/HTTP/Headers/Expires +tags: + - Cache + - Expires + - HTTP + - Respuesta + - encabezado +translation_of: Web/HTTP/Headers/Expires +--- +
{{HTTPSidebar}}
+ +

El encabezado Expires contiene la fecha y hora en la que se considerará la respuesta caducada.

+ +

Fechas inválidas, como el valor 0, representan una fecha en el pasado, esto significa que el recurso ya ha expirado.

+ +

Si existe un encabezado {{HTTPHeader("Cache-Control")}} con la directiva "max-age" o "s-max-age" en la respuesta, el encabezado Expires será ignorado.

+ + + + + + + + + + + + + + + + +
Encabezado{{Glossary("Response header")}}
{{Glossary("Nombre de encabezado Prohibido")}}no
{{Glossary("Simple response header", "CORS-safelisted response-header")}}si
+ +

Sintaxis

+ +
Expires: <http-date>
+
+ +

Directivas

+ +
+
<http-date>
+
+

Una estampa de tiempo HTTP.

+
+
+ +

Ejemplo

+ +
Expires: Jue, 21 Oct 2017 07:28:00 GMT
+ +

Especificaciones

+ + + + + + + + + + + + +
EspecificaciónTítulo
{{RFC("7234", "Expires", "5.3")}}Hypertext Transfer Protocol (HTTP/1.1): Caching
+ +

Compatibilidad en Navegadores

+ + + +

{{Compat("http.headers.Expires")}}

+ +

Ver también

+ + diff --git a/files/es/web/http/headers/host/index.html b/files/es/web/http/headers/host/index.html new file mode 100644 index 0000000000..2e7ac10815 --- /dev/null +++ b/files/es/web/http/headers/host/index.html @@ -0,0 +1,75 @@ +--- +title: Host +slug: Web/HTTP/Headers/Host +tags: + - Cabecera + - HTTP + - Referencia +translation_of: Web/HTTP/Headers/Host +--- +
{{HTTPSidebar}}
+ +

El encabezado de solicitud Host especifica el nombre de dominio del servidor (para hosting virtual), y (opcionalmente) el número de puerto TCP en el que el servidor esta escuchando.

+ +

Si no se provee un puerto, se usará el puerto por defecto para el servicio solicitado (e.j.: "80" para una URL HTTP).

+ +

El encabezado Host debe enviarse obligatoriamente en todas las solicitudes HTTP/1.1. Un código de error {{HTTPStatus("400")}} (Petición mala) debería enviarse a cualquier solicitud HTTP/1.1 que no contiene o contiene más de un encabezado Host.

+ + + + + + + + + + + + +
Header typeEncabezado de solicitud
{{Glossary("Forbidden header name")}}
+ +

Sintaxis

+ +
Host: <host>:<puerto>
+
+ +

Directivas

+ +
+
<host>
+
el nombre de dominio del servidor (pata hosting virtual).
+
<puerto> {{optional_inline}}
+
número de puerto TCP en el que el servidor está escuchando.
+
+ +

Ejemplos

+ +
Host: developer.cdn.mozilla.net
+ +

Especificaciones

+ + + + + + + + + + + + +
SpecificationTitle
{{RFC("7230", "Host", "5.4")}}Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing
+ +

Compatibilidad del navegador

+ + + +

{{Compat("http.headers.Host")}}

+ +

Véase también

+ + diff --git a/files/es/web/http/headers/index.html b/files/es/web/http/headers/index.html new file mode 100644 index 0000000000..4b4ed3c8a1 --- /dev/null +++ b/files/es/web/http/headers/index.html @@ -0,0 +1,396 @@ +--- +title: HTTP headers +slug: Web/HTTP/Headers +tags: + - HTTP + - Headers + - Networking + - Reference + - TopicStub +translation_of: Web/HTTP/Headers +--- +
{{HTTPSidebar}}
+ +
Las cabeceras (en inglés headers) HTTP permiten al cliente y al servidor enviar información adicional junto a una petición o respuesta. Una cabecera de petición esta compuesta por su nombre (no sensible a las mayusculas) seguido de dos puntos ':', y a continuación su valor (sin saltos de línea). Los espacios en blanco a la izquierda del valor son ignorados
+ +
+ +
Se pueden agregar cabeceras propietarias personalizadas usando el prefijo 'X-', pero esta convención se encuentra desfasada desde Julio de 2012, debido a los inconvenientes causados cuando se estandarizaron campos no estandar en el RFC 6648; otras están listadas en un registro IANA, cuyo contenido original fue definido en el RFC 4229, IANA tambien mantiene un registro de propuestas para nuevas cabeceras HTTP
+ +
+ +

Las Cabeceras pueden ser agrupadas de acuerdo a sus contextos:

+ + + +

Las cabeceras también pueden clasificarse de acuerdo a cómo se comportan frente a ellas los proxies:

+ +
+
Cabeceras de extremo a extremo
+
Estas cabeceras deben ser enviadas al recipiente final del mensaje; esto es, el servidor (para una petición) o el cliente (para una respuesta). Los proxies intermediarios deben transmitir las cabeceras de extremo-a-extremo sin modificar, y las cachés deben guardarlas tal y como son recibidas.
+
Cabeceras de paso
+
Estas cabeceras sólo son significativas para conexiones de un paso, y no deben ser transmitidas por proxies o almacenarse en caché. Éstas cabeceras son: {{ httpheader("Connection") }}, {{ httpheader("Keep-Alive") }}, {{ httpheader("Proxy-Authenticate") }}, {{ httpheader("Proxy-Authorization") }}, {{ httpheader("TE") }}, {{ httpheader("Trailer") }}, {{ httpheader("Transfer-Encoding") }} and {{ httpheader("Upgrade") }}. La cabecera general {{ httpheader("Connection") }} sólo puede usarse para este tipo de cabeceras.
+
+ +

La siguiente lista agrupa las cabeceras HTTP en categorías según su uso. Para visualizar una lista en orden alfabético, use el navegador del lado izquierdo.

+ +

Autenticación

+ +
+
{{HTTPHeader("WWW-Authenticate")}}
+
Define el método de autenticación que debería ser usado para tener acceso al contenido. 
+
{{HTTPHeader("Authorization")}}
+
Contiene las credenciales para autenticar a un usuario con un servidor.
+
{{HTTPHeader("Proxy-Authenticate")}}
+
Define el método de autenticación que debería ser usado para tener acceso a un recurso que se encuentre tras un servidor proxy.
+
{{HTTPHeader("Proxy-Authorization")}}
+
Contiene las credenciales para autenticar a un usuario con un servidor proxy.
+
+ +

Almacenamiento en caché

+ +
+
{{HTTPHeader("Age")}}
+
El tiempo en el que un objeto ha estado en una caché proxy, expresado en segundos.
+
{{HTTPHeader("Cache-Control")}}
+
Especifica directivas para los mecanismos de almacenamiento en caché, tanto para peticiones como para respuestas.
+
{{HTTPHeader("Expires")}}
+
La fecha y tiempo tras las cuales una respuesta se considera agotada. 
+
{{HTTPHeader("Pragma")}}
+
Cabecera specífica para implementaciones que puede tener diferentes efectos a lo lartgo del proceso de petición-respuesta. Utilizada para implementar retrocompatibilidad con cachés de tipo HTTP/1.0 donde la cabecera Cache-Control aún no esté presente.
+
{{HTTPHeader("Warning")}}
+
Un campo de alerta general, que contiene i nformación sobre diferentes problemas posibles.
+
+ +

Indicaciones sobre el cliente

+ +
+
{{HTTPHeader("Accept-CH")}}
+
...
+
+ +
+
{{HTTPHeader("Accept-CH-Lifetime")}}
+
...
+
{{HTTPHeader("Early-Data")}}
+
...
+
+ +
+
{{HTTPHeader("Content-DPR")}}
+
...
+
{{HTTPHeader("DPR")}}
+
...
+
{{HTTPHeader("Downlink")}}
+
...
+
{{HTTPHeader("Save-Data")}}
+
...
+
{{HTTPHeader("Viewport-Width")}}
+
...
+
{{HTTPHeader("Width")}}
+
...
+
+ +
+
+

Condicionales

+
+
{{HTTPHeader("Last-Modified")}}
+
Se trata de un validador, indicando la fecha de la última modificación del recurso, utilizado para comparar diferentes versiones del mismo recurso. No es tan preciso como {{HTTPHeader("ETag")}}, pero es más sencillo de calcular en algunos entornos. Las peticiones condicionales que usan {{HTTPHeader("If-Modified-Since")}} y {{HTTPHeader("If-Unmodified-Since")}}utilizan este valor para cambiar el comportamiento de la petición.
+
{{HTTPHeader("ETag")}}
+
Se trata de un validador, un tipo de hilo único identificando la versión del recurso. Las peticiones condicionales que usan {{HTTPHeader("If-Match")}} y {{HTTPHeader("If-None-Match")}} utilizan este valor para cambiar el comportamiento de la petición.
+
{{HTTPHeader("If-Match")}}
+
Realiza la petición condicional y aplican el método sólo si el recurso almacenado coincide con uno de los ETags asignados.
+
{{HTTPHeader("If-None-Match")}}
+
Realiza la petición condicional y aplican el método sólo si el recurso almacenado no coincide con ninguno de los ETags. Ésta cabecera se utiliza para actualizar cachés (para peticiones seguras), o para prevenir la subida de un recurso si éste ya existe en el servidor.
+
{{HTTPHeader("If-Modified-Since")}}
+
Realiza la petición condicional y espera que la entidad sea transmitia sólo si ha sido modificada tras la fecha especificada. Esta cabecera se usa para transmitir datos si la cabecera ha quedado desfasada.
+
{{HTTPHeader("If-Unmodified-Since")}}
+
Realiza la petición condicional y espera que la entidad sea transmitia sólo si no ha sido modificada tras la fecha especificada. Esta cabecera se usa para preservar la coherencia de un nuevo fragmento de un rango especifico respecto a otros ya existentes, o para implementar un sistema de control de concurrencia optimistacuando se están modificando documentos existentes. 
+
+ +

Gestión de conexiones

+ +
+
{{HTTPHeader("Connection")}}
+
Controla si la conexión a la red se mantiene activa después de que la transacción en curso haya finalizado.
+
{{HTTPHeader("Keep-Alive")}}
+
Controla el tiempo durante el cual una conexión persistente debe permanecer abierta.
+
+ +

Negociación de contenido

+ +
+
{{HTTPHeader("Accept")}}
+
Informa al servidor sobre los diferentes tipos de datos que pueden enviarse de vuelta. Es de tipo MIME.
+
{{HTTPHeader("Accept-Charset")}}
+
Informa al servidor sobre el set de caracteres que el cliente puede entender.
+
{{HTTPHeader("Accept-Encoding")}}
+
Informa al servidor sobre el algoritmo de codificación, habitualmente un algoritmo de compresión, que puede utilizarse sobre el recurso que se envíe de vuelta en la respuesta.
+
{{HTTPHeader("Accept-Language")}}
+
Informa al servidor sobre el lenguage que el servidor espera recibir de vuelta. Se trata de una indicación, y no estará necesariamente sometida al control del cliente: el servidor siempre deberá estar atento para no sobreescribir una selección específica del usuario (como, por ejemplo, una selección de idiomas en una lista desplegable). 
+
+ +
+
+ +

Controles

+ +
+
{{HTTPHeader("Expect")}}
+
...
+
{{HTTPHeader("Max-Forwards")}}
+
...
+
+ +

Cookies

+ +
+
{{HTTPHeader("Cookie")}}
+
Contiene HTTP cookies enviadas previamente por el servidor con la cabecera {{HTTPHeader("Set-Cookie")}} .
+
{{HTTPHeader("Set-Cookie")}}
+
Envia cookies desde el servidor al usuario.
+
{{HTTPHeader("Cookie2")}} {{obsolete_inline}}
+
Habitualmente contenía una cookie HTTP, enviada previamente por el servidor con la cabecera {{HTTPHeader("Set-Cookie2")}} , pero ha quedado obsoleta por la especificación. Utiliza en su lugar {{HTTPHeader("Cookie")}}.
+
{{HTTPHeader("Set-Cookie2")}} {{obsolete_inline}}
+
Se utilizaba para enviar cookies desde el servidor al usuario, but has been obsoleted by the specification. pero ha quedado obsoleta por la especificación. Utiliza en su lugar  {{HTTPHeader("Set-Cookie")}} .
+
+

CORS

+
+
{{HTTPHeader("Access-Control-Allow-Origin")}}
+
Indica si la respuesta puede ser compartida.
+
{{HTTPHeader("Access-Control-Allow-Credentials")}}
+
Indica si la respuesta puede quedar expuesta o no cuando el marcador de la credencial retorna como 'true'. 
+
{{HTTPHeader("Access-Control-Allow-Headers")}}
+
Utilizado como respuesta a una solicitud de validación para indicár qué cabeceras HTTP pueden utilizarse a la hora de lanzar la petición.
+
{{HTTPHeader("Access-Control-Allow-Methods")}}
+
Especifica el método (o métodos) permitido al acceder al recurso, en respuesta a una petición de validación.
+
{{HTTPHeader("Access-Control-Expose-Headers")}}
+
Indica qué cabeceras pueden ser expuestas como parte de una respuesta al listar sus nombres. 
+
{{HTTPHeader("Access-Control-Max-Age")}}
+
Indica durante cuánto tiempo puede guardarse el resultado de una solicitud de validación. 
+
{{HTTPHeader("Access-Control-Request-Headers")}}
+
Utilizada al lanzar una petición de validación, para permitir al servidor saber qué cabeceras HTTP se utilizarán cuando la petición en cuestión se lance. 
+
{{HTTPHeader("Access-Control-Request-Method")}}
+
Utilizada al enviar una solicitud de validación que permite al servidor saber qué método HTTP se utilizará cuando la petición en cuestión se lance. 
+
{{HTTPHeader("Origin")}}
+
Indica el punto de origen de una petición de recogida.
+
{{HTTPHeader("Timing-Allow-Origin")}}
+
Especifica los origines que tienen permitido ver los valores de los atributos obtenidos mediante las características de la Resource Timing API, que de otra forma serían reportados como cero debido a los orígenes cruzados.
+
+ +

Cabeceras sin seguimiento

+ +
+
{{HTTPHeader("DNT")}}
+
Usada para indicar las preferencias de seguimiento (tracking) del usuario.
+
{{HTTPHeader("Tk")}}
+
Indica el estado del seguimiento que se aplica a la petición en curso.
+
+ +

Descargas

+ +
+
{{HTTPHeader("Content-Disposition")}}
+
Una cabecera de respuesta usada en caso de que el recurso transmitid deba mostrarse en pantalla , o debe ser gestionada como una descarga y por tanto el navegador deba presentar una pantalla de 'Guardar Como'. 
+
+ +

Mensajes sobre la información del cuerpo (body)

+ +
+
{{HTTPHeader("Content-Length")}}
+
Indica el tamaño del cuerpo del recurso, expresado en números decimales de octetos, que ha sido enviado al recipiente.
+
{{HTTPHeader("Content-Type")}}
+
Indica el tipo de medio del recurso .
+
{{HTTPHeader("Content-Encoding")}}
+
Utilizado para indicar el algoritmo de compresión.
+
{{HTTPHeader("Content-Language")}}
+
Indica el idioma (o idiomas) elegidos para los usuarios, de forma que se pueda mostrar contenido diferenciado para el usuario de acuerdo a sus preferencias de idioma.
+
{{HTTPHeader("Content-Location")}}
+
Indica un punto de origen alternativo para un recurso.
+
+

Proxies

+
+
+ +
+
{{HTTPHeader("Forwarded")}}
+
Contiene información sobre el 'lado cliente' de un servidor proxy, que se alteraría o perdería si un proxy está involucrado en la ruta de la petición.
+
{{HTTPHeader("X-Forwarded-For")}} {{non-standard_inline}}
+
Identifica la IP de origen de un cliente que se conecta a un servidor web a través de un proxy HTTP o un equilibrador de carga.
+
{{HTTPHeader("X-Forwarded-Host")}} {{non-standard_inline}}
+
Identifies the la dirección original solicitada que un cliente haya utilizado para conectarse a un proxy o equilibrador de carga.
+
{{HTTPHeader("X-Forwarded-Proto")}} {{non-standard_inline}}
+
Identifica el protocolo (HTTP o HTTPS) que un cliente haya utilizado para conectarse a un proxy o equilibrador de carga.
+
{{HTTPHeader("Via")}}
+
Añadida por los proxies, y pueden aparecer tanto en las cabeceras de petición como las de respuesta.
+
+ +

Redirecciones

+ +
+
{{HTTPHeader("Location")}}
+
Indica la URL a la que debe redirigir una página determinada.
+
+ +

Contexto de petición

+ +
+
{{HTTPHeader("From")}}
+
Contiene la dirección de email de un usuario humano que controla el gestor de peticiones.
+
{{HTTPHeader("Host")}}
+
Especifica el nombre de dominio del servidor (para alojamiento virtual), y (opcionalmente) el número de puerto TCP en el que está escuchando el servidor.
+
{{HTTPHeader("Referer")}}
+
Indica la dirección de la página web previa desde la cual un link nos ha redirigido a la actual.
+
{{HTTPHeader("Referrer-Policy")}}
+
Establece la información del referer que deberá ser enviada en las peticiones que incluyan {{HTTPHeader("Referer")}}.
+
{{HTTPHeader("User-Agent")}}
+
Contiene un string característico que será examinado por el protocolo de red para identificar el tipo de aplicación, sistema operativo, proveedor de software o versión del software del agente de software que realiza la petición. Véase también Firefox user agent string reference.
+
+ +

Contexto de respuesta

+ +
+
{{HTTPHeader("Allow")}}
+
Lista el rango de métodos de peticiones HTTP aceptadas por un servidor.
+
{{HTTPHeader("Server")}}
+
Contiene información sobre el software utilizado por el servidor de origen para gestionar la petición.
+
+ +

Peticiones de rango

+ +
+
{{HTTPHeader("Accept-Ranges")}}
+
Indica si el servidor acepta peticiones de rango y, de ser así, en qué unidades puede expresarse ese rango. 
+
{{HTTPHeader("Range")}}
+
Indica la parte del documento que el servidor debe devolver.
+
{{HTTPHeader("If-Range")}}
+
Crea una petición de rango condicional que sólo es satisfecha cuando el etag o los datos provistos coinciden con los del recurso remoto. Se usan para prevenir la descarga de dos rangos desde versiones incompatibles del mismo recurso. 
+
{{HTTPHeader("Content-Range")}}
+
Indica el lugar que debe ocupar un mensaje parcial dentro de la totalidad del cuerpo del recurso. 
+
+ +

Seguridad

+ +
+
{{HTTPHeader("Content-Security-Policy")}} ({{Glossary("CSP")}})
+
Controla qué recursos puede cargar el usuario para una página concreta. 
+
{{HTTPHeader("Content-Security-Policy-Report-Only")}}
+
Permite a los desarrolladores web experimentar con políticas de acceso, monotorizando (pero sin implementar) sus efectos. Éstos informes de violación de protocolo contienen documentos del tipo {{Glossary("JSON")}} enviados mediante una petición HTTP POST hacia el URI especificado.
+
{{HTTPHeader("Expect-CT")}}
+
Permite a los sitios optar por informar y/o hacer cumplir los requerimientos de Transparencia de Certificados, lo que impide que el uso de certificados publicados incorrectamente por ese sitio, pase desapercibido. Cuando un sitio habilita el encabezado Expect-CT, se solicita a Chrome que verifique que cualquier certificado para ese sitio, aparezca en los registros públicos de CT.
+
{{HTTPHeader("Public-Key-Pins")}} ({{Glossary("HPKP")}})
+
Asocia una clave criptográfica pública y específica con un determinado servidor web para reducir el riesgo de {{Glossary("MITM")}} ataques con certificados falsificados.
+
{{HTTPHeader("Public-Key-Pins-Report-Only")}}
+
Envía reportes al report-uri especificado en la cabecera, sin bloquear la conexión entre cliente y servidor aún cuando el pinning ha sido violado.
+
+ +
+
{{HTTPHeader("Strict-Transport-Security")}} ({{Glossary("HSTS")}})
+
Fuerza la comunicación utilizando HTTPS en lugar de HTTP.
+
{{HTTPHeader("Upgrade-Insecure-Requests")}}
+
Envía una señal al servidor expresando la preferencia del cliente por una respuesta encriptada y autenticada, y esta puede manejar de forma satisfactoria la directiva {{CSP("upgrade-insecure-requests")}}.
+
+ +
+
{{HTTPHeader("X-Content-Type-Options")}}
+
Deshabilita el MIME sniffing y fuerza al navegador a utilizar el tipo establecido en {{HTTPHeader("Content-Type")}}.
+
+ +
+
{{HTTPHeader("X-Download-Options")}}
+
...
+
+ +
+
{{HTTPHeader("X-Frame-Options")}} (XFO)
+
Le indica al navegador que debe renderizar una página utilizando {{HTMLElement("frame")}}, {{HTMLElement("iframe")}} o {{HTMLElement("object")}}.
+
{{HTTPHeader("X-Permitted-Cross-Domain-Policies")}}
+
...
+
{{HTTPHeader("X-Powered-By")}}
+
...
+
{{HTTPHeader("X-XSS-Protection")}}
+
Habilita los filtros de cross-site scripting.
+
+ +

Eventos enviados por el servidor

+ +
+
{{HTTPHeader("Ping-From")}}
+
...
+
{{HTTPHeader("Ping-To")}}
+
...
+
{{HTTPHeader("Last-Event-ID")}}
+
...
+
+ +

Codificación de transferencia

+ +
+
{{HTTPHeader("Transfer-Encoding")}}
+
Especifica la forma de codificación para transferir la entidad al usuario de forma segura.
+
{{HTTPHeader("TE")}}
+
Especifica la codificación de transferencia que el usuario estará dispuesto a aceptar.
+
{{HTTPHeader("Trailer")}}
+
Le permite al remitente incluir campos adicionales al final de un mensaje fragmentado.
+
+ +

WebSockets

+ +
+
{{HTTPHeader("Sec-WebSocket-Key")}}
+
...
+
{{HTTPHeader("Sec-WebSocket-Extensions")}}
+
...
+
{{HTTPHeader("Sec-WebSocket-Accept")}}
+
...
+
{{HTTPHeader("Sec-WebSocket-Protocol")}}
+
...
+
{{HTTPHeader("Sec-WebSocket-Version")}}
+
...
+
+ +

Otros

+ +
+
{{HTTPHeader("Date")}}
+
Contiene la fecha y la hora en que el mensaje fue originado.
+
{{HTTPHeader("Expect-CT")}}
+
Le permite a los sitios el optar por reportar o forzar los requerimientos de transparencia de certificado.
+
{{HTTPHeader("Large-Allocation")}}
+
Le indica al navegador que la página a ser cargada va a realizar una asignación grande.
+
{{HTTPHeader("Link")}}
+
...
+
{{HTTPHeader("Retry-After")}}
+
Indica cuánto tiempo debe esperar el usuario antes de hacer una solicitud de seguimiento.
+
{{HTTPHeader("Server-Timing")}}
+
Comunica una o mas métricas y descripciones para un dado ciclo de petición-respuesta.
+
{{HTTPHeader("SourceMap")}}
+
Enlaza el código generado a un source map.
+
{{HTTPHeader("Upgrade")}}
+
Éste es un Estándar de Internet Propuesto. Para leer una guía inclusiva de todos los Estándares de Internet Oficiales y Propuestos con información detallada sobre cada uno de ellos, visita esta referencia de Estándares de Internet, que se actualiza de forma diaria. El documento relevante de la RFC para la Actualuzación sobre los Estándares de Cabeceras es el RFC 7230, sección 6.7. El estándar establece reglas para la actualización o cambios a un protocolo doferente en el cliente, servidor, o protocolo de conexiones actuales.Por ejemplo, este estándar de cabecera permite que un cliente cambie de un protocolo HTTP 1.1 al HTTP 2.0, asumiendo que el servidor decida reconocer e implementar la cabecera de Actualización. Ninguna de las partes involucradas está obligada a aceptar los cambios implementados por el campo de la Cabecera de Actualización {{HTTPHeader("Upgrade")}}.  Puede usarse tanto para cabeceras de cliente como para las del servidor. Si se especifica la cabecera de Actualización, el emisor también DEBE enviar el campo de cabecera de Conexión con la opción de actualización especificada. Para más detalles sobre dicho campo, por favor revisar la sección 6.1 de la ya mencionada RFC.
+
{{HTTPHeader("Vary")}}
+
Determina cómo emparejar futuras cabeceras de petición para decidir si una respuesta en caché puede utilizarse, en lugar de solicitar una cabecera nueva desde el servidor de origen. 
+
{{HTTPHeader("X-DNS-Prefetch-Control")}}
+
Controla el prefetching de DNS, una característica que permite a muchos navegadores realizar resoluciones de nombre de los dominios sobre ambos enlaces, que un usuario podría elegir seguir; así como URLs pata objetos referenciados por el documento incluyendo imágenes, CSS, archivos Javascript y demás. 
+
{{HTTPHeader("X-Firefox-Spdy")}} {{deprecated_inline}} {{non-standard_inline}}
+
...
+
{{HTTPHeader("X-Requested-With")}}
+
...
+
{{HTTPHeader("X-Robots-Tag")}}
+
...
+
{{HTTPHeader("X-UA-Compatible")}} {{non-standard_inline}}
+
Utilizada por Internet Explorer para señalar que tipo de modo de documento utilizar.
+
+ +

Ver también

+ + diff --git a/files/es/web/http/headers/keep-alive/index.html b/files/es/web/http/headers/keep-alive/index.html new file mode 100644 index 0000000000..73af07d2f4 --- /dev/null +++ b/files/es/web/http/headers/keep-alive/index.html @@ -0,0 +1,93 @@ +--- +title: Keep-Alive +slug: Web/HTTP/Headers/Keep-Alive +tags: + - HTTP + - encabezado + - header + - keep-alive +translation_of: Web/HTTP/Headers/Keep-Alive +--- +
{{HTTPSidebar}}{{Non-standard_header}}
+ +

El encabezado Keep-Alive permite al remitente indicar como será la forma de conexión, se puede establecer un tiempo de espera y una cantidad máxima de solicitudes.

+ +
+

El encabezado  {{HTTPHeader("Connection")}} se tiene que establecer en  "keep-alive" para que este encabezado tenga sentido. Además, {{HTTPHeader("Connection")}} y {{HTTPHeader("Keep-Alive")}} son ignorados en  HTTP/2; la administración de la conexión se realiza mediante otros mecanismos.

+
+ + + + + + + + + + + + +
Header type{{Glossary("General header")}}
{{Glossary("Forbidden header name")}}no
+ +

Sintaxis

+ +
Keep-Alive: parámetros
+ +

Directivas

+ +
+
parámetros
+
Lista de parámetros separados por coma, cada uno consiste en un identificador y un valor separado por el signo igual ('='). Es posible establecer los siguientes identificadores: +
    +
  • timeout: indica la cantidad de  tiempo mínima  en la cual una conexión ociosa se debe mantener abierta (en segundos). Nótese que los timeouts mas largos que el timeout de TCP pueden ser ignorados si no se establece un mensaje de TCP keep-alive  en la capa de transporte.
  • +
  • max: indica el número máximo de peticiones que pueden ser enviadas en esta conexión antes de que sea cerrada. Si es  0, este valor es ignorado para las conexiones no segmentadas, ya que se enviara otra solicitud en la próxima respuesta. Una canalización de HTTP puede ser usada para limitar la división.
  • +
+
+
+ +

Ejemplos

+ +

Una respuesta que contiene el encabezado Keep-Alive:

+ +
HTTP/1.1 200 OK
+Connection: Keep-Alive
+Content-Encoding: gzip
+Content-Type: text/html; charset=utf-8
+Date: Thu, 11 Aug 2016 15:23:13 GMT
+Keep-Alive: timeout=5, max=1000
+Last-Modified: Mon, 25 Jul 2016 04:32:39 GMT
+Server: Apache
+
+(body)
+ +

Especificaciones

+ + + + + + + + + + + + + + + + +
SpecificationTitle
HyperText Transport Protocol Keep-Alive HeaderThe Keep-Alive Header (Experimental specification)
{{RFC("7230", "Keep-Alive", "appendix-A.1.2")}}Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing
+ +

Compatibilidad del navegador

+ + + +

{{Compat("http.headers.Keep-Alive")}}

+ +

Mirar tambien

+ + diff --git a/files/es/web/http/headers/link/index.html b/files/es/web/http/headers/link/index.html new file mode 100644 index 0000000000..d1de0eef8f --- /dev/null +++ b/files/es/web/http/headers/link/index.html @@ -0,0 +1,79 @@ +--- +title: Link +slug: Web/HTTP/Headers/Link +tags: + - Enlaces + - HTTP + - HTTP Headers + - Links + - Referencia +translation_of: Web/HTTP/Headers/Link +--- +
{{HTTPSidebar}}
+ +

El campo de encabezado de entidad de Link HTTP proporciona un medio para serializar uno o más enlaces en encabezados HTTP. Es semánticamente equivalente al elemento HTML {{HTMLElement("link")}}.

+ + + +

Sintaxis

+ +
Link: < uri-referencia >; parametro1=valor1; parametro2="valor2"
+ +
+
<uri-reference>
+
La referencia de URI debe estar encerrada entre < y >.
+
+ +

Parametros

+ +

El encabezado del enlace contiene parámetros, que se separan con ; y son equivalentes a los atributos del elemento {{HTMLElement("link")}}.

+ +

Ejemplos

+ +

El URI debe estar encerrado entre < y >:

+ +
Link: <https://ejemplo.com>; rel="preconnect"
+ +
Link: https://mal.ejemplo; rel="preconnect"
+ + + +

Se puede especificar varios enlaces separados por comas, por ejemplo:

+ +
Link: <https://uno.ejemplo.com>; rel="preconnect", <https://dos.ejemplo.com>; rel="preconnect", <https://tres.ejemplo.com>; rel="preconnect"
+ +

Especificaciones

+ + + + + + + + + + + + + + + + + + + + + +
EspecificacionesEstadoComentarios
{{RFC(8288, "Link Serialisation in HTTP Headers", 3)}}IETF RFC
{{RFC(5988, "The Link Header Field", 5)}}IETF RFCDefinición inicial
+ +

Compatibilidad del navegador

+ + + +

{{Compat("http.headers.Link")}}

+ +

Ver también

+ + diff --git a/files/es/web/http/headers/origin/index.html b/files/es/web/http/headers/origin/index.html new file mode 100644 index 0000000000..99d4b11b0f --- /dev/null +++ b/files/es/web/http/headers/origin/index.html @@ -0,0 +1,83 @@ +--- +title: Origin +slug: Web/HTTP/Headers/Origin +tags: + - Cabecera + - HTTP + - Petición del encabezado + - Referencia + - origin +translation_of: Web/HTTP/Headers/Origin +--- +
{{HTTPSidebar}}
+ +

La cabecera de petición Origin indica de dónde se origina una búsqueda. No incluye ninguna información de ruta, sino sólo el nombre del servidor. Es enviado con las peticiones {{Glossary("CORS")}}, tanto como con las peticiones {{HTTPMethod("POST")}}. Es similar a la cabecera {{HTTPHeader("Referer")}}, pero, a diferencia de ésta, no revela la ruta completa.

+ + + + + + + + + + + + +
Tipo de encabezado{{Glossary("Request header", "Petición del encabezado")}}
{{Glossary("Forbidden header name", "Nombe prohibido del encabezado")}}
+ +

Sintaxis

+ +
Origin: ""
+Origin: <esquema> "://" <nombre de host> [ ":" <puerto> ]
+
+ +

Origin puede ser una cadena vacía: esto es útil, por ejemplo, si el origen es una data URL.

+ +

Directivas

+ +
+
<esquema>
+
El protocolo usado. Generalmente es el protocolo HTTP o su versión segura, HTTPS.
+
<nombre de host>
+
El nombre de dominio del servidor (para hosting virtual) o la IP.
+
<puerto> {{optional_inline}}
+
Número de puerto TCP en el que el servidor está escuchando. Si no se proporciona, se usa el puerto por defecto para el servicio requerido (e.g., "80" para una URL HTTP).
+
+ +

Ejemplos

+ +
Origin: https://developer.mozilla.org
+ +

Especificaciones

+ + + + + + + + + + + + + + + + +
EspecificaciónComentario
{{RFC("6454", "Origin", "7")}}El Concepto de Origen Web
{{SpecName('Fetch','#origin-header','Origin header')}}Suplanta la cabecera Origin como se define en RFC6454.
+ +

Compatibilidad de navegadores

+ + + +

{{Compat("http.headers.Origin")}}

+ +

Ver también

+ + diff --git a/files/es/web/http/headers/pragma/index.html b/files/es/web/http/headers/pragma/index.html new file mode 100644 index 0000000000..2d1344e2c2 --- /dev/null +++ b/files/es/web/http/headers/pragma/index.html @@ -0,0 +1,77 @@ +--- +title: Pragma +slug: Web/HTTP/Headers/Pragma +translation_of: Web/HTTP/Headers/Pragma +--- +
{{HTTPSidebar}}
+ +

El Pragmaencabezado general HTTP / 1.0 es un encabezado específico de la implementación que puede tener varios efectos a lo largo de la cadena de solicitud-respuesta. Se utiliza para la compatibilidad con versiones anteriores de las memorias caché HTTP / 1.0 en las que el Cache-Controlencabezado HTTP / 1.1 aún no está presente.

+ +
+

Nota : Pragmano se especifica para las respuestas HTTP y, por lo tanto, no es un reemplazo confiable para el Cache-Controlencabezado HTTP / 1.1 general , aunque se comporta de la misma manera que Cache-Control: no-cache, si el Cache-Controlcampo del encabezado se omite en una solicitud. Utilice Pragmasolo para compatibilidad con versiones anteriores con clientes HTTP / 1.0.

+
+ + + + + + + + + + + + + + + + +
Tipo de encabezado{{Glossary("General header")}}, pero el comportamiento de respuesta no se especifica y, por lo tanto, es específico de la implementación.
{{Glossary("Forbidden header name")}}no
{{Glossary("Simple response header", "CORS-safelisted response-header")}}si
+ +

Sintaxis

+ +
Pragma: no-cache
+
+ +

Directiva

+ +
+
no-cache
+
+

Igual que Cache-Control: no-cacheHace que las cachés envíen la solicitud al servidor de origen para su validación antes de liberar una copia en caché.

+
+
+ +

Ejemplos 

+ +
Pragma: no-cache
+ +

Especificación 

+ + + + + + + + + + + + +
EspecificaciónTítulo
{{RFC("7234", "Pragma", "5.4")}}Hypertext Transfer Protocol (HTTP/1.1): almacenamiento en caché
+ +

Compatibilidad de navegadores

+ + + +

{{Compat("http.headers.Pragma")}}

+ +

Véase también

+ + + +

Traducción realizada por Ervin A. Santos R.

diff --git a/files/es/web/http/headers/referer/index.html b/files/es/web/http/headers/referer/index.html new file mode 100644 index 0000000000..aa37ad8a59 --- /dev/null +++ b/files/es/web/http/headers/referer/index.html @@ -0,0 +1,84 @@ +--- +title: Referer +slug: Web/HTTP/Headers/Referer +tags: + - Cabecera + - HTTP + - Referencia +translation_of: Web/HTTP/Headers/Referer +--- +
{{HTTPSidebar}}
+ +

La cabecera de solicitud Referer (‘referente’) contiene la dirección de la página web anterior de la que provenía el enlace a la página actual que se siguió. La cabecera Referer permite a los servidores identificar de dónde los visitan las personas y pueden emplear estos datos para realizar análisis, registros o un almacenamiento en antememoria optimizado, por mencionar algunos ejemplos.

+ +

Observe que referer es una grafía errónea de la palabra referrer. Consulte {{interwiki("wikipedia", "HTTP_referer", "HTTP referer en Wikipedia")}} para obtener más información.

+ +
+

La cabecera Referer tiene el potencial de revelar información sobre el histórico de navegación del usuario, lo cual constituye un problema de privacidad.

+
+ +

Los navegadores no envían ninguna cabecera Referer si:

+ + + + + + + + + + + + + + +
Tipo de cabecera{{Glossary("Request header")}}
{{Glossary("Forbidden header name")}}
+ +

Sintaxis

+ +
Referer: <url>
+
+ +

Directivas

+ +
+
<url>
+
Una dirección absoluta o parcial de la página web anterior, la cual contenía un enlace hacia la página solicitada actual que se siguió. No se incluyen los fragmentos de URL (esto es, «#sección») ni los datos de usuario (o sea, «nombredeusuario:contraseña» en URI como «https://nombredeusuario:contraseña@ejemplo.com/equis/ye/»).
+
+ +

Ejemplos

+ +
Referer: https://developer.mozilla.org/es/docs/Web/JavaScript
+ +

Especificaciones

+ + + + + + + + + + + + +
EspecificaciónTítulo
{{RFC("7231", "Referer", "5.5.2")}}Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content
+ +

Compatibilidad entre navegadores

+ + + +

{{Compat("http.headers.Referer")}}

+ +

Véase también

+ + diff --git a/files/es/web/http/headers/referrer-policy/index.html b/files/es/web/http/headers/referrer-policy/index.html new file mode 100644 index 0000000000..7d5e20ae83 --- /dev/null +++ b/files/es/web/http/headers/referrer-policy/index.html @@ -0,0 +1,237 @@ +--- +title: Referrer-Policy +slug: Web/HTTP/Headers/Referrer-Policy +tags: + - Cabecera + - HTTP + - Respuesta + - privacidad +translation_of: Web/HTTP/Headers/Referrer-Policy +--- +
{{HTTPSidebar}}
+ +

La cabecera Referrer-Policy de HTTP determina qué datos de referente, de entre los que se envían con la cabecera {{HTTPHeader("Referer")}}, deben incluirse con las solicitudes realizadas.

+ + + + + + + + + + + + +
Tipo de cabecera{{Glossary("Response header")}}
{{Glossary("Forbidden header name")}}no
+ +

Sintaxis

+ +

Observe que {{HTTPHeader("Referer")}} es una falta de ortografía; en inglés, la palabra correcta es referrer. La cabecera Referrer-Policy no contiene esta falta.

+ +
Referrer-Policy: no-referrer
+Referrer-Policy: no-referrer-when-downgrade
+Referrer-Policy: origin
+Referrer-Policy: origin-when-cross-origin
+Referrer-Policy: same-origin
+Referrer-Policy: strict-origin
+Referrer-Policy: strict-origin-when-cross-origin
+Referrer-Policy: unsafe-url
+
+ +

Directivas

+ +
+
no-referrer
+
La cabecera {{HTTPHeader("Referer")}} se omitirá en su totalidad. No se enviará ningún dato de referente junto con las solicitudes.
+
no-referrer-when-downgrade (predeterminado)
+
Este es el comportamiento predeterminado del agente de usuario si no se especifica ninguna directiva. El origen se enviará como referente cuando el nivel de seguridad del protocolo permanece igual (HTTPS → HTTPS), pero no se enviará a destinos menos seguros (HTTPS → HTTP).
+
origin
+
Se enviará únicamente el origen del documento como referente en todos los casos. El documento https://ejemplo.com/pagina.html enviará el referente https://ejemplo.com/.
+
origin-when-cross-origin
+
Se enviará un URL completo al realizarse una solicitud de origen equivalente, pero únicamente el origen para otros casos.
+
same-origin
+
Se enviará un referente para orígenes de sitio equivalente, pero las solicitudes de origen transversal no contendrán ningún dato de referente.
+
strict-origin
+
Solo se enviará el origen del documento como referente a destinos que a priori son igual de seguros (HTTPS → HTTPS), pero no lo recibirán destinos menos seguros (HTTPS → HTTP).
+
strict-origin-when-cross-origin
+
Se enviará un URL completo al realizarse una solicitud de origen equivalente, se enviará únicamente el origen del documento a destinos igual de seguros a priori (HTTPS → HTTPS) y no se enviará ninguna cabecera a destinos menos seguros (HTTPS → HTTP).
+
unsafe-url
+
Se enviará un URL completo al realizarse una solicitud de origen equivalente o de origen transversal. +
Esta directiva filtrará los orígenes y las rutas de acceso de recursos protegidos por TLS a orígenes inseguros. Estudie atentamente el impacto resultante de esta configuración.
+
+
+ +

Ejemplos

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
DirectivaDocumentoNavegación aReferente
no-referrerhttps://ejemplo.com/pagina.htmlcualquier dominio o ruta de accesoningún referente
no-referrer-when-downgradehttps://ejemplo.com/pagina.htmlhttps://ejemplo.com/otrapagina.htmlhttps://ejemplo.com/pagina.html
no-referrer-when-downgradehttps://ejemplo.com/pagina.htmlhttps://mozilla.orghttps://ejemplo.com/pagina.html
no-referrer-when-downgradehttps://ejemplo.com/pagina.htmlhttp://ejemplo.orgningún referente
originhttps://ejemplo.com/pagina.htmlcualquier dominio o ruta de accesohttps://ejemplo.com/
origin-when-cross-originhttps://ejemplo.com/pagina.htmlhttps://ejemplo.com/otrapagina.htmlhttps://ejemplo.com/pagina.html
origin-when-cross-originhttps://ejemplo.com/pagina.htmlhttps://mozilla.orghttps://ejemplo.com/
origin-when-cross-originhttps://ejemplo.com/pagina.htmlhttp://ejemplo.com/pagina.htmlhttps://ejemplo.com/
same-originhttps://ejemplo.com/pagina.htmlhttps://ejemplo.com/otrapagina.htmlhttps://ejemplo.com/pagina.html
same-originhttps://ejemplo.com/pagina.htmlhttps://mozilla.orgningún referente
strict-originhttps://ejemplo.com/pagina.htmlhttps://mozilla.orghttps://ejemplo.com/
strict-originhttps://ejemplo.com/pagina.htmlhttp://ejemplo.orgningún referente
strict-originhttp://ejemplo.com/pagina.htmlcualquier dominio o ruta de accesohttp://ejemplo.com/
strict-origin-when-cross-originhttps://ejemplo.com/pagina.htmlhttps://ejemplo.com/otrapagina.htmlhttps://ejemplo.com/pagina.html
strict-origin-when-cross-originhttps://ejemplo.com/pagina.htmlhttps://mozilla.orghttps://ejemplo.com/
strict-origin-when-cross-originhttps://ejemplo.com/pagina.htmlhttp://example.orgningún referente
unsafe-urlhttps://ejemplo.com/pagina.html?q=123cualquier dominio o ruta de accesohttps://ejemplo.com/pagina.html?q=123
+ +

Especificaciones

+ + + + + + + + + + + + +
EspecificaciónEstado
Directiva de referentesAnteproyecto de editores
+ +

Compatibilidad entre navegadores

+ + + +

{{Compat("http.headers.Referrer-Policy")}}

+ +
+

Notas:

+ + + +

Los valores posibles son:

+ + +
+ +

Véase también

+ + diff --git a/files/es/web/http/headers/server/index.html b/files/es/web/http/headers/server/index.html new file mode 100644 index 0000000000..5fc9356428 --- /dev/null +++ b/files/es/web/http/headers/server/index.html @@ -0,0 +1,66 @@ +--- +title: Server +slug: Web/HTTP/Headers/Server +translation_of: Web/HTTP/Headers/Server +--- +
{{HTTPSidebar}}
+ +

La cabecera Server contiene la información acerca del software usado por el servidor original encargado de la solicitud.

+ +

La información larga y detallada debe de ser evitada en las cabeceras Server ya que puede revelar detalles de implementación que pueden hacer (un poco) más fácil para los atacantes encontrar y explotar huecos de seguridad.

+ + + + + + + + + + + + +
Header type{{Glossary("Response header")}}
{{Glossary("Forbidden header name")}}no
+ +

Sintaxis

+ +
Server: <producto>
+
+ +

Directivas

+ +
+
<producto>
+
El nombre del software o (sub) producto que se encargó de las solicitudes.
+
+ +

Ejemplos

+ +
Server: Apache/2.4.1 (Unix)
+ +

Especificaciones

+ + + + + + + + + + + + +
EspecificaciónTítulo
{{RFC("7231", "Server", "7.4.2")}}Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content
+ +

Compatibilidad con navegadores

+ + + +

{{Compat("http.headers.Server")}}

+ +

Véase también

+ + diff --git a/files/es/web/http/headers/set-cookie/index.html b/files/es/web/http/headers/set-cookie/index.html new file mode 100644 index 0000000000..f8a50e2c7c --- /dev/null +++ b/files/es/web/http/headers/set-cookie/index.html @@ -0,0 +1,217 @@ +--- +title: Set-Cookie +slug: Web/HTTP/Headers/Set-Cookie +tags: + - Cookies + - HTTP + - Referencia + - Respuesta + - encabezado + - samesite +translation_of: Web/HTTP/Headers/Set-Cookie +--- +
{{HTTPSidebar}}
+ +
+ +
La cabecera de respuesta HTTP Set-Cookie se usa para enviar cookies desde el servidor al agente de usuario, así el agente de usuario puede enviarlos de vuelta al servidor.
+ +
+ +
Para más información, visite la guía para cookies HTTP.
+ +
+ + + + + + + + + + + + +
Tipo de cabecera{{Glossary("Response header", "Respuesta del encabezado")}}
{{Glossary("Forbidden header name", "Nombre prohibido del encabezado")}}no
+ +

Sintaxis

+ +
Set-Cookie: <cookie-name>=<cookie-value>
+Set-Cookie: <cookie-name>=<cookie-value>; Expires=<date>
+Set-Cookie: <cookie-name>=<cookie-value>; Max-Age=<non-zero-digit>
+Set-Cookie: <cookie-name>=<cookie-value>; Domain=<domain-value>
+Set-Cookie: <cookie-name>=<cookie-value>; Path=<path-value>
+Set-Cookie: <cookie-name>=<cookie-value>; Secure
+Set-Cookie: <cookie-name>=<cookie-value>; HttpOnly
+
+Set-Cookie: <cookie-name>=<cookie-value>; SameSite=Strict
+Set-Cookie: <cookie-name>=<cookie-value>; SameSite=Lax
+Set-Cookie: <cookie-name>=<cookie-value>; SameSite=None
+
+// Es posible usar múltiples directivas, por ejemplo:
+Set-Cookie: <cookie-name>=<cookie-value>; Domain=<domain-value>; Secure; HttpOnly
+
+ +

Directivas

+ + + + + +
+
<cookie-name>=<cookie-value>
+
Una cookie comienza con un par nombre-valor: +
    +
  • Un <cookie-name> puede ser cualquier cosa excepto caracteres de control (CTLs) o espacios y tabulaciones. Tampoco debe contener caracteres de separación como los siguientes: ( ) < > @ , ; : \ " /  [ ] ? = { }.
  • +
  • Un <cookie-value> opcionalmente puede ser establecido dentro de comillas dobles y se permite usar cualquier caracter US-ASCII excluyendo CTLs, espacios en blanco, comillas dobles, comas, punto y coma y la barra invertida. Codificación: Muchas implementaciones realizan codificación de URL sobre los valores de la cookie, aunque esto no es requerido por la especificación RFC. Esto ayuda a satisfacer los requerimientos sobre los caracteres permitidos para <cookie-value>.
  • +
  • Prefijo __Secure-: Las cookies cuyo nombre comience por __Secure- (los guiones forman parte del prefijo) deben ser establecidas con la bandera secure y deben provenir de una página segura (HTTPS).
  • +
  • Prefijo __Host-: Las cookies cuyo nombre comience por __Host- deben ser establecidas con la bandera secure, provenir de una página segura (HTTPS), no deben tener especificado un dominio (y por tanto no son enviadas a subdominios) y la ruta debe ser "/".
  • +
+
+
Expires=<date> {{optional_inline}}
+
+

El tiempo de vida máximo útil de una cookie como marca HTTP-date timestamp. Ver {{HTTPHeader("Date")}} para el detalle del formato.

+ +

Si no está especificado, la cookie tendrá el tiempo de vida de una session cookie. Una sesión finaliza cuando el cliente lo culmina, esto quiere decir que la sesión será removida en ese punto.

+ +
+

Advertencia: Sin embargo, muchos navegadores web tiene una caracteristica llamada "restaurar" que almacenará todas tus pestañas para tenerlas lista cuando el navegador sea usado nuevamente. Las cookies de sesión tambien estarán presentes como si nunca se hubiera cerrado el navegador.

+
+ Cuando una fecha de Expires es definida, la fecha límite es relativa al cliente donde la cookie se define, no en el servidor.
+
Max-Age=<non-zero-digit> {{optional_inline}}
+
Número de segundos hasta que la cookie expire. Un cero o un número negativo hace expirar la cookie inmediatamente. Los navegadores antiguos (ie6, ie7, and ie8) no soportan max-age. Para otros navegadores, si ambos estan definidos (Expires y Max-Age), Max-Age tendrá mayor importancia.
+
Domain=<domain-value> {{optional_inline}}
+
Anfitriones donde la cookie será enviada. +
    +
  • Si se omite, por defecto el huésped es la URL del documento actual, sin incluir subdominios.
  • +
  • Contraria a anteriores especificaciones, los puntos principales en nombres de dominio (.example.com) son ignorados.
  • +
  • Si un dominio es especificado, los subdominios son siempre incluídos.
  • +
+
+
Path=<path-value> {{optional_inline}}
+
Una ruta que debe existir en la URL solicitada, o el navegador no enviará el encabezado Cookie.
+
El caracter diagonal (/) es interpretado como un separador de directorios y subdirectorios que serán también comparados: para Path=/docs, /docs, /docs/Web/, y /docs/Web/HTTP todos tendrán que coincidir.
+
Secure {{optional_inline}}
+
Una cookie segura es sólo enviada al servidor cuando una petición es enviada con el esquema https:. (Sin embargo, información confidencial nunca debería ser almacenada en Cookies HTTP, como todo el mecanismo es  However, confidential information should never be stored in HTTP Cookies, ya que todo el mecanismo es inherentemente inseguro y no encripta ninguna información.) +

Nota: Sitios inseguros (http:) no puenden almacenar directivas "seguras" apartir de Chrome 52+ y Firefox 52+.

+
+
HttpOnly {{optional_inline}}
+
Impide que el código JavaScript acceda a la cookie. Por ejemplo, a través de la propiedad {{domxref("Document.cookie")}}, y la API {{domxref("XMLHttpRequest")}}, o la API {{domxref("Request")}}. Esto mitiga los ataques contra scripts cross-site ({{Glossary("XSS")}}).
+
SameSite=<samesite-value> {{optional_inline}}
+
+
    +
  • Strict
  • +
  • Lax
  • +
  • None
  • +
+ +

Afirma que una cookie no debe ser enviada con peticiones cruzadas, proveiendo alguna protección contra ataques de falsificación de solicitudes cruzadas ({{Glossary("CSRF")}}).

+ +

Los navegadores haciendo migraciones para que el comportamiento por defecto de las cookies en lugar de default sea SameSite=Lax. Si una cookie necesita ser enviada en peticiones cruzadas, se tiene que optar por no restringir el mismo sitio (SameSite) usando la directiva None. La directiva None requiere el atributo Secure.

+
+
+ +

Ejemplos

+ + + +

Las cookies de sesión son removidas cuando el cliente se apaga. Las cookies son cookies de sesión si no se especifican las directivas Expires o Max-Age.

+ +
Set-Cookie: sessionId=38afes7a8
+ + + +

En lugar de expirar cuando el cliente se cierra, las cookies permanentes expiran en una fecha especifica (Expires) o después de una longitud de tiempo determinado (Max-Age).

+ +
Set-Cookie: id=a3fWa; Expires=Wed, 21 Oct 2015 07:28:00 GMT
+
+ +
Set-Cookie: id=a3fWa; Max-Age=2592000
+ +

Invalid domains

+ +

Una cookie para un dominio que no incluya el servidor que la defina debería ser rechazada por el agente de usuario.

+ +

La siguiente cookie sera rechazada si se define por el servidor ubicado en originalcompany.com como:

+ +
Set-Cookie: qwerty=219ffwef9w0f; Domain=somecompany.co.uk
+ +

Una cookie para el subdomino del dominio actual será rechazada.

+ +

La siguiente cookie sera rechazada si el servidor anfitrión en example.com la define como:

+ +
Set-Cookie: sessionId=e8bb43229de9; Domain=foo.example.com
+ + + +

Los nombres de las cookies prefijadas con __Secure- o __Host- pueden ser solo usadas si son definidas con la directiva secure desde un origen (HTTPS) seguro.

+ +

Además, cookies con el prefijo __Host- deben tener una ruta de / (significando cualquier ruta del huésped) y no debe tener un atributo Domain.

+ +
+

Para clientes que no implementan prefijos para las cookies, no se puede contar con que estas garantías adicionales, y las cookies prefijadas sean aceptadas.

+
+ +
// Ambas aceptadas al venir de un origen seguro (HTTPS)
+Set-Cookie: __Secure-ID=123; Secure; Domain=example.com
+Set-Cookie: __Host-ID=123; Secure; Path=/
+
+// Rechazada por faltar la directiva Secure
+Set-Cookie: __Secure-id=1
+
+// Rechazada por faltar la directiva Path=/
+Set-Cookie: __Host-id=1; Secure
+
+// Rechazada por definir un dominio
+Set-Cookie: __Host-id=1; Secure; Path=/; domain=example.com
+
+ +

Especificaciones

+ + + + + + + + + + + + + + + + + + +
EspecificaciónTítulo
{{RFC("6265", "Set-Cookie", "4.1")}}Mecanismo de gestión del estado HTTP
draft-ietf-httpbis-rfc6265bis-05Cookie Prefixes, Same-Site Cookies, and Strict Secure Cookies
+ +

Compatibilidad de los navegadores

+ + + +

{{Compat("http.headers.Set-Cookie", 5)}}

+ +

Notas de compatibilidad

+ + + +

Ver también

+ + diff --git a/files/es/web/http/headers/strict-transport-security/index.html b/files/es/web/http/headers/strict-transport-security/index.html new file mode 100644 index 0000000000..a7a230454f --- /dev/null +++ b/files/es/web/http/headers/strict-transport-security/index.html @@ -0,0 +1,112 @@ +--- +title: Strict-Transport-Security +slug: Web/HTTP/Headers/Strict-Transport-Security +translation_of: Web/HTTP/Headers/Strict-Transport-Security +--- +
{{HTTPSidebar}}
+ +

HTTP Strict-Transport-Security  (a menudo abreviado como {{Glossary("HSTS")}}) es una característica de seguridad que permite a un sitio web indicar a los navegadores que sólo se debe comunicar con HTTPS en lugar de usar HTTP.

+ + + + + + + + + + + + +
Tipo de Encabezado{{Glossary("Encabezado de Respuesta")}}
{{Glossary("Nombre de Encabezado Prohibido")}}no
+ +

Sintaxis

+ +
Strict-Transport-Security: max-age=<expire-time>
+Strict-Transport-Security: max-age=<expire-time>; includeSubDomains
+Strict-Transport-Security: max-age=<expire-time>; preload
+
+ +

Directivas

+ +
+
max-age=<expire-time>
+
Es el tiempo, en segundos, que el navegador debe recordar que el sitio solo debe ser accsible usando HTTPS.
+
includeSubDomains {{optional_inline}}
+
Si este parámetro opcional está especificado, la regla aplica para todos los subdominiones del sitio.
+
preload {{optional_inline}}
+
Ver {{anch("Precargando Strict Transport Security")}} para mas detalles. No es parte de la especificación.
+
+ +

Descripción

+ +

Si un sitio web acepta una conexión a través de HTTP y redirecciona a HTTPS, el usuario en este caso podría inicialmente hablar a la versión no encriptada del sitio antes de ser redireccionado, si por ejemplo el usuario tipea http://www.foo.com/ o incluso solo foo.com.

+ +

Esto habilita el potencial ataque man-in-the-middle, donde el redireccionamiento podría ser aprovechado para enviar al usuario a un sitio malicioso en lugar de la versión segura de la página original. 

+ +

El encabezado HTTP Strict Transport Security permite a un sitio web informar al navegador que nunca cargue el sitio usando HTTP y que debe automáticamente convertir todos los intentos de acceso HTTP a HTTPS.

+ +
Nota: El encabezado Strict-Transport-Security es  ignorado por el navegador cuando el sitio es accedido usando HTTP; esto es porque un atacante podría interceptar las conexines HTTP e inyectar el encabezado o removerlo. Cuando el sitio es accedido a través de HTTPS con un certificado sin errores, el navegador sabe que el sitio es capaz de usar HTTPS y cumple con lo indicado en el encabezado Strict-Transport-Security.
+ +

Un escenario de ejemplo

+ +

Tu ingresas a una red WiFi libre en un areopuerto y empiezas a nevegar por el internet visitando tu servicio de banca en linea para revisar tu estado de cuenta y pagar algunas cuentas. Desafortunadamente, el punto de acceso que estás usando es actualmente un computador portátil de un hacker. Ellos están interceptando todas tus solicitudes originales HTTP y redireccionando a un clone del sitio de tu banco en lugar del sitio real. Ahora tus datos privados están expuestos al hacker.

+ +

Strict Transport Security resuelve este problema; siempre que hayas ingresado al sitio de tu banco una vez usando HTTPS y el sitio del banco use Strict Transport Security. Tu navegador sabe que debe usar HTTPS, lo cual previene el hacker realizar este tipo de ataque. 

+ +

Como el navegador lo maneja

+ +

La primera vez que accediste al sitio usando HTTPS y este retornó el encabezado Strict-Transport-Security, el navegador registra esta información, de tal manera que en futuros intentos para cargar el sitio usando HTTP va a usar en su lugar HTTPS automáticamente. 

+ +

Cuando el tiempo de expiración especificado por el encabezado Strict-Transport-Security haya pasado, el siguiente intento de cargar el sitio a través de HTTP se va a procesar de forma normal.

+ +

En cualquier momento que el encabezado Strict-Transport-Security sea entregado el navegador, este actualiza el tiempo de expiración para el sitio, así los sitios pueden refrescar su información y prevenir el tiempo de expiración. Para deshabilitarlo sería necesario configurar max-age a 0 sobre una conexión HTTPS, entonces automáticamente expira el encabezado Strict-Transport-Security permitiendo acceso vía HTTP.

+ +

Precargando Strict Transport Security

+ +

Google mantiene un servicio de precarga HSTS. Siguiendo la siguiente guía  y enviando un dominio válido, los navegadores nunca se conectarán a utu dominio usando una conexión insegura. Mientras el servicio esté sobre Google, todos los navegadores tienen determinado intentar usar la lista precargada. 

+ + + +

Ejemplos

+ +

Todos los presentes y futuros subdominios usarán HTTPS durante 1 año. 

+ +

This blocks access to pages or sub domains that can only be served over HTTP.

+ +
Strict-Transport-Security: max-age=31536000; includeSubDomains
+ +

Especificaciones

+ + + + + + + + + + + + + + +
EspecificaciónEstadoComentario
{{SpecName('HSTS')}}{{Spec2('HSTS')}}Definición inicial
+ +

Compatibilidad de navegadores

+ + + +

{{Compat("http/headers/strict-transport-security")}}

+ +

Ver también

+ + diff --git a/files/es/web/http/headers/transfer-encoding/index.html b/files/es/web/http/headers/transfer-encoding/index.html new file mode 100644 index 0000000000..1bd1e138e2 --- /dev/null +++ b/files/es/web/http/headers/transfer-encoding/index.html @@ -0,0 +1,117 @@ +--- +title: Transfer-Encoding +slug: Web/HTTP/Headers/Transfer-Encoding +tags: + - Castellano Transfer encoding + - HTTP Header + - Métodos HTTP + - Referências + - header + - transfer encoding español +translation_of: Web/HTTP/Headers/Transfer-Encoding +--- +
+ +
El encabezado Transfer-Encoding especifica la forma de codificación utilizada para transferir de forma segura el {{Glossary("Payload body", "cuerpo del payload")}} al usuario.
+ +
+ +
HTTP/2 no admite el mecanismo de codificación de transferencia fragmentada de HTTP 1.1, ya que proporciona sus propios mecanismos, más eficientes, para la transmisión de datos.
+ +

Transfer-Encoding es un encabezado salto por salto, que se aplica a un mensaje entre dos nodos, no a un recurso en sí mismo. Cada segmento de una conexión de múltiples nodos puede usar diferentes valores de Transfer-Encoding. Si desea comprimir datos en toda la conexión, use el encabezado de extremo a extremo {{HTTPHeader("Content-Encoding")}} en su lugar.

+ +

Cuando está presente en una respuesta a una solicitud {{HTTPMethod ("HEAD")}} que no tiene cuerpo, indica el valor que se habría aplicado al mensaje {{HTTPMethod ("GET")}} correspondiente.

+ + + + + + + + + + + + +
Header type{{Glossary("Response header")}}
{{Glossary("Forbidden header name")}}yes
+ +

Sintaxis

+ +
Transfer-Encoding: chunked
+Transfer-Encoding: compress
+Transfer-Encoding: deflate
+Transfer-Encoding: gzip
+Transfer-Encoding: identity
+
+// Se pueden enumerar varios valores, separados por una coma
+Transfer-Encoding: gzip, chunked
+ +

Directivas

+ +
+
chunked
+
Los datos se envían en una serie de fragmentos. El encabezado {{HTTPHeader ("Content-Length")}} se omite en este caso y al comienzo de cada fragmento debe agregar la longitud del fragmento actual en formato hexadecimal, seguido de '\r\n' y luego el trozo en sí, seguido de otro '\r\n'. El trozo de terminación es un trozo regular, con la excepción de que su longitud es cero. Le sigue el avance, que consiste en una secuencia (posiblemente vacía) de campos de encabezado de entidad.
+
compress
+
Un formato usando el algoritmo Lempel-Ziv-Welch (LZW). El nombre del valor se tomó del programa de compresión UNIX, que implementó este algoritmo.
+ Al igual que el programa de compresión, que ha desaparecido de la mayoría de las distribuciones de UNIX, esta codificación de contenido no es utilizada por casi ningún navegador en la actualidad, en parte debido a un problema de patente (que expiró en 2003).
+
deflate
+
Usando la estructura zlib (definida en la RFC 1950), con el algoritmo de compresión deflate (definido en la RFC 1951).
+
gzip
+
Un formato usando la codificación Lempel-Ziv (LZ77), con un CRC de 32 bits. Este es originalmente el formato del programa gzip de UNIX. El estándar HTTP / 1.1 también recomienda que los servidores que admiten esta codificación de contenido deben reconocer como un alias x-gzip, para fines de compatibilidad.
+
identity
+
Indica la función de identidad (es decir, sin compresión ni modificación). Este token, excepto si se especifica explícitamente, siempre se considera aceptable.
+
+ +

Ejemplos

+ +

Codificación Fragmentada

+ +

La codificación fragmentada es útil cuando se envían grandes cantidades de datos al cliente y el tamaño total de la respuesta puede no conocerse hasta que la solicitud se haya procesado por completo. Por ejemplo, al generar una tabla HTML grande como resultado de una consulta a la base de datos o al transmitir imágenes grandes. Veamos un ejemplo de una respuesta fragmentada:

+ +
HTTP/1.1 200 OK
+Content-Type: text/plain
+Transfer-Encoding: chunked
+
+7\r\n
+Mozilla\r\n
+9\r\n
+Developer\r\n
+7\r\n
+Network\r\n
+0\r\n
+\r\n
+ +

Especificaciones

+ + + + + + + + + + + + + + +
EspecificaciónTítulo
{{RFC("7230", "Transfer-Encoding", "3.3.1")}}Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing
+ +

Compatibilidad con el Navegador

+ + + +

{{Compat("http.headers.Transfer-Encoding")}}

+ +

Ver además:

+ + diff --git a/files/es/web/http/headers/user-agent/index.html b/files/es/web/http/headers/user-agent/index.html new file mode 100644 index 0000000000..f02289e69e --- /dev/null +++ b/files/es/web/http/headers/user-agent/index.html @@ -0,0 +1,140 @@ +--- +title: User-Agent +slug: Web/HTTP/Headers/User-Agent +tags: + - HTTP + - Referencia + - header +translation_of: Web/HTTP/Headers/User-Agent +--- +
{{HTTPSidebar}}
+ +

La solicitud de cabecera del Agente de Usuario contiene una cadena característica que permite identificar el protocolo de red  que ayuda a descubrir  el tipo de aplicación, sistema operativo, provedor del software o laversión del software de la petición del agente de usuario.

+ +
+

Lea Browser detection using the user agent y vea porque utilizar diferentes páginas web o servicios en diferentes navegadores es  normalmente una mala idea

+ +

 

+
+ + + + + + + + + + + + +
Header type{{Glossary("Request header")}}
{{Glossary("Forbidden header name")}}no
+ +

Sintaxis

+ +
User-Agent: <product> / <product-version> <comment>
+
+Common format for web browsers:
+
+User-Agent: Mozilla/<version> (<system-information>) <platform> (<platform-details>) <extensions>
+
+ +

Directivas

+ +
+
<product>
+
Identificador del producto
+
<product-version>
+
Numero de versión del producto.
+
<comment>
+
Ninguno o más comentatios conteniendo infomacion del subproducto, por ejemplo.
+
+ +

Cadena del Agente de usuario de Firefox

+ +

Para más detalles del Agente de usuario basado en cadenas de texto en Firefox y Gecko , lea Firefox user agent string reference. La cadena de agente de usuario de Firefox esta dividida en 4 componentes.

+ +

Mozilla/5.0 (platform; rv:geckoversion) Gecko/geckotrail Firefox/firefoxversion

+ + + +

Ejemplo

+ +
Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0
+Mozilla/5.0 (Macintosh; Intel Mac OS X x.y; rv:42.0) Gecko/20100101 Firefox/42.0
+
+ +

Cadena del Agente de Usuario de Chrome

+ +

El agente de usuario de Chrome (or Chromium/blink-based engines) es similar al formato usado por Firefox. Por efectos de compatibilidad, añade una string como "KHTML like Gecko" y "Safari",

+ +

Ejemplo

+ +
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36
+ +

Cadena del Agente de Usuario de Opera

+ +

El navegador Opera tambien esta basado en el mismo motor (blink engine), que es casi lo mismo, con la exepción de que este añade "OPR/<version>".

+ +

Ejemplo

+ +
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36 OPR/38.0.2220.41
+ +

Cadena del Agente de Usuario de Safari

+ +

En el ejemplo, la cadena del Agente de usuario  es tomado de una versión movil de safari, esta contiene la palabra "Mobile".

+ +

Ejemplo

+ +
Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.0 Mobile/14E304 Safari/602.1
+ +

Cadena del Agente de Usuario de Internet Explorer

+ +

Ejemplo

+ +
Mozilla/5.0 (compatible; MSIE 9.0; Windows Phone OS 7.5; Trident/5.0; IEMobile/9.0)
+ +

Cadena del Agente de Usuariode Crawler Y bot UA strings

+ +

Ejemplo

+ +
Googlebot/2.1 (+http://www.google.com/bot.html)
+ +

Especificaciones

+ + + + + + + + + + + + +
SpecificationTitle
{{RFC("7231", "User-Agent", "5.5.3")}}Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content
+ +

Compatibilidad entre navegadores

+ + + +

{{Compat("http.headers.User-Agent")}}

+ +

Vea tambien

+ + diff --git a/files/es/web/http/headers/vary/index.html b/files/es/web/http/headers/vary/index.html new file mode 100644 index 0000000000..0de2382a81 --- /dev/null +++ b/files/es/web/http/headers/vary/index.html @@ -0,0 +1,81 @@ +--- +title: Vary +slug: Web/HTTP/Headers/Vary +translation_of: Web/HTTP/Headers/Vary +--- +
{{HTTPSidebar}}
+ +

El encabezado de respuesta Vary HTTP determina como hacer coincidir los encabezados de las solicitudes futuras para decidir si se puede utilizar una respuesta almacenada en caché en lugar de solicitar una nueva desde el servidor de origen. Esto es usado por el servidor para indicar cuales encabezados usa cuando selecciona una representación de recursos en un algoritmo content negotiation .

+ +

El encabezado Vary se debe establecer en una respuesta  {{HTTPStatus("304")}} Not Modified exactamente igual que habría sido fijado en una respuesta equivalente {{HTTPStatus("200")}} OK.

+ + + + + + + + + + + + +
Header type{{Glossary("Response header")}}
{{Glossary("Forbidden header name")}}no
+ +

Sintaxis

+ +
Vary: *
+Vary: <header-name>, <header-name>, ...
+
+ +

Directivas

+ +
+
*
+
Cada solicitud para una URL debe ser tratada como unica e inaccesible . Una de las mejores formas de indicar esto es {{HTTPHeader("Cache-Control")}}: private, la cual hace mas claro leer y  señalar que el objeto no debe ser almacenado nunca.
+
<header-name>
+
Una lista de nombres de encabezados separados por coma para tener en cuenta al decidir si se puede utilizar o no una respuesta cache.
+
+ +

Ejemplos

+ +

Servicio Dinámico

+ +

Cuando usamos el encabezado Vary: User-Agent , los servidores de almacenamiento en cache deben considerar al agente de usuario al decidir si desea publicar la pagína desde la memoria cache. Por ejemplo, si estas sirviendo contenido diferente a usuarios moviles, puede ayudarle a evitar que la memoria cache puede servir erróneamente una version de escritorio de su sitio a usuarios móviles. Esto puede ayudar a Googley otros motoress de busqueda para descubrir la version de una pagina web, y ademas permitir que intenten Cloaking.

+ +
Vary: User-Agent
+ +

Especificaciones

+ + + + + + + + + + + + +
SpecificationTitle
{{RFC("7231", "Vary", "7.1.4")}}Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content
+ +

Compatibilidad del navegador

+ + + +

{{Compat("http.headers.Vary")}}

+ +

Notas de Compatibilidad

+ + + +

Vea tambien

+ + diff --git a/files/es/web/http/headers/www-authenticate/index.html b/files/es/web/http/headers/www-authenticate/index.html new file mode 100644 index 0000000000..d3456d4258 --- /dev/null +++ b/files/es/web/http/headers/www-authenticate/index.html @@ -0,0 +1,87 @@ +--- +title: WWW-Authenticate +slug: Web/HTTP/Headers/WWW-Authenticate +translation_of: Web/HTTP/Headers/WWW-Authenticate +--- +
{{HTTPSidebar}}
+ +

La cabezera de la respuesta HTTP WWW-Authenticate define el método de autentificación que debe ser utilizado para acceder al recurso solicitado.

+ +

La cabezera WWW-Authenticate  es enviada junto al estado  {{HTTPStatus("401")}} Unauthorized en la respuesta.

+ + + + + + + + + + + + +
Header type{{Glossary("Response header")}}
{{Glossary("Forbidden header name")}}no
+ +

Syntax

+ +
WWW-Authenticate: <type> realm=<realm>
+
+ +

Directives

+ +
+
<type>
+
Tipo de autentificación. Un tipo común es "Basic". IANA mantiene una lista de los esquemas de autentificación.
+
realm=<realm>
+
Una descripción del recurso protegido. Si el realm no es especificado, los clientes a menudo muestran el hostname.
+
charset=<charset>
+
Le indica al cliente el tipo de encoding scheme preferido por el servidor cuando se envía un nombre de usuario y contraseña. El único valor permitido es la cadena de texto (no diferencia entre mayúsculas o mínusculas) "UTF-8".  Esto no esta relacionado a el encoding del parámetro realm.
+
+ +

Examples

+ +

Typically, a server response contains a WWW-Authenticate header that looks like these:

+ +
WWW-Authenticate: Basic
+
+WWW-Authenticate: Basic realm="Access to the staging site", charset="UTF-8"
+
+ +

See also HTTP authentication for examples on how to configure Apache or nginx servers to password protect your site with HTTP basic authentication.

+ +

Specifications

+ + + + + + + + + + + + + + + + + + +
SpecificationTitle
{{RFC("7235", "WWW-Authenticate", "4.1")}}HTTP/1.1: Authentication
{{RFC("7617")}}The 'Basic' HTTP Authentication Scheme
+ +

Browser compatibility

+ + + +

{{Compat("http.headers.WWW-Authenticate")}}

+ +

See also

+ + diff --git a/files/es/web/http/headers/x-content-type-options/index.html b/files/es/web/http/headers/x-content-type-options/index.html new file mode 100644 index 0000000000..29d4fb6986 --- /dev/null +++ b/files/es/web/http/headers/x-content-type-options/index.html @@ -0,0 +1,83 @@ +--- +title: X-Content-Type-Options +slug: Web/HTTP/Headers/X-Content-Type-Options +tags: + - Encabezado de respuesta + - Encabezados HTTP + - HTTP + - Referencia +translation_of: Web/HTTP/Headers/X-Content-Type-Options +--- +
{{HTTPSidebar}}
+ +

El encabezado HTTP de respuesta X-Content-Type-Options es un marcador utilizado por el servidor para indicar que los tipos MIME anunciados en los encabezados {{HTTPHeader("Content-Type")}} no se deben cambiar ni seguir. Esto permite desactivar el MIME type sniffing, o, en otras palabras, es una manera de decir que los webmasters sabían lo que estaban haciendo.

+ +

Este encabezado fue introducido por Microsoft en IE 8 para que los webmasters bloquearan el rastreo de contenido, pudiendo transformar tipos MIME no ejecutables en tipos MIME ejecutables. Desde entonces, otros navegadores lo han introducido, incluso con  algoritmos de detección MIME menos agresivos.

+ +

Los evaluadores de seguridad del sitio suelen esperar que este encabezado aparezca.

+ +

Note: nosniff solo se aplican a los tipos "script" y "style". Además la aplicación de nosniff a las imágenes resulto ser incompatible con los sitios web existentes.

+ + + + + + + + + + + + +
Header type{{Glossary("Response header")}}
{{Glossary("Forbidden header name")}}no
+ +

Sintaxis

+ +
X-Content-Type-Options: nosniff
+
+ +

Directivas

+ +
+
nosniff
+
Bloquea una solicitud si el tipo solicitado es +
    +
  • "style" y el tipo MIME no es "text/css", o
  • +
  • "script" y el tipo MIME no es un JavaScript MIME type.
  • +
+
+
+ +

Especificaciones

+ + + + + + + + + + + + + + +
EspecificaciónEstadoComentario
{{SpecName("Fetch", "#x-content-type-options-header", "X-Content-Type-Options definition")}}{{Spec2("Fetch")}}Definición inicial
+ +

Compatibilidad del navegador

+ + + +

{{Compat("http.headers.X-Content-Type-Options")}}

+ +

Vea también

+ + diff --git a/files/es/web/http/headers/x-forwarded-for/index.html b/files/es/web/http/headers/x-forwarded-for/index.html new file mode 100644 index 0000000000..dfa92db08b --- /dev/null +++ b/files/es/web/http/headers/x-forwarded-for/index.html @@ -0,0 +1,74 @@ +--- +title: X-Forwarded-For +slug: Web/HTTP/Headers/X-Forwarded-For +translation_of: Web/HTTP/Headers/X-Forwarded-For +--- +
{{HTTPSidebar}}
+ +

La cabecera X-Forwarded-For (XFF) es un estándar de facto para identificar el origen de la dirección IP de un cliente conectado a un servidor web a través de un proxy HTTP o un balanceador de carga. Cuando se intercepta el tráfico entre cliente y servidores, los registros de los servidores de acceso contienen sólo la dirección IP del proxy o del balanceador de carga. Para ver la dirección IP original del cliente, se utiliza la cabecera X-Forwarded-For.

+ +

Esta cabecera se usa para la depuración, estadísticas, y la generación de contenido dependiente de la ubicación. De forma deliberada, expone información privada sensible como la dirección IP del cliente. Por lo tanto, debe tenerse en cuenta la privacidad del usuario a la hora de publicar esta cabecera.

+ +

Una versión estandarizada de esta cabecera es la cabecera HTTP {{HTTPHeader("Forwarded")}}.

+ +

X-Forwarded-For es también una cabecera de correo electrónico que indica que el mismo fue reenviado desde otra cuenta.

+ + + + + + + + + + + + +
Header type{{Glossary("Request header")}}
{{Glossary("Forbidden header name")}}no
+ +

Sintaxis

+ +
X-Forwarded-For: <client>, <proxy1>, <proxy2>
+
+ +

Directivas

+ +
+
<cliente>
+
La dirección IP del cliente
+
<proxy1>, <proxy2>
+
Si una solicitud pasa por varios proxies, las direcciones IP de cada proxy se listan en forma sucesiva. Esto significa que la IP de más a la derecha es la IP del proxy más reciente, y la IP de más a la izquierda es la IP del cliente originador. 
+
+ +

Ejemplos

+ +
X-Forwarded-For: 2001:db8:85a3:8d3:1319:8a2e:370:7348
+
+X-Forwarded-For: 203.0.113.195
+
+X-Forwarded-For: 203.0.113.195, 70.41.3.18, 150.172.238.178
+
+ +

Otras formas no estándar:

+ +
# Usado para algunos servicios de Google
+X-ProxyUser-Ip: 203.0.113.19
+ +

Especificaciones

+ +

No es parte de especificación actual alguna. La versión estandarizada de este cabezal es {{HTTPHeader("Forwarded")}}.

+ +

Browser compatibility

+ + + +

{{Compat("http.headers.X-Forwarded-For")}}

+ +

See also

+ + diff --git a/files/es/web/http/headers/x-frame-options/index.html b/files/es/web/http/headers/x-frame-options/index.html new file mode 100644 index 0000000000..954cc3792f --- /dev/null +++ b/files/es/web/http/headers/x-frame-options/index.html @@ -0,0 +1,134 @@ +--- +title: X-Frame-Options +slug: Web/HTTP/Headers/X-Frame-Options +translation_of: Web/HTTP/Headers/X-Frame-Options +--- +
{{HTTPSidebar}}
+ +

El encabezado de respuesta HTTP X-Frame-Options puede ser usado para indicar si debería permitírsele a un navegador renderizar una página en un {{HTMLElement("frame")}}, {{HTMLElement("iframe")}} o {{HTMLElement("object")}} . Las páginas webs pueden usarlo para evitar ataques de {{interwiki("wikipedia", "clickjacking")}} , asegurándose que su contenido no es embebido en otros sitios.

+ +

La seguridad añadida sólo es proporcionada si el usuario que está accediendo al documento está utilizando un navegador que soporte X-Frame-Options.

+ + + + + + + + + + + + +
Tipo de encabezado{{Glossary("Response header")}}
{{Glossary("Nombre de encabezado prohibido")}}no
+ +

Sintaxis

+ +

Existen tres posibles directivas para X-Frame-Options:

+ +
X-Frame-Options: DENY
+X-Frame-Options: SAMEORIGIN
+X-Frame-Options: ALLOW-FROM https://example.com/
+
+ +

Directivas

+ +

Si especifica DENY, fallarán no sólo los intentos de cargar la página en un marco desde otros sitios, sino que fallarán cuando sea cargada desde el mismo sitio. Por otro lado, si especifica SAMEORIGIN, puede usar la página en un marco mientras el sitio que la incluya sea el mismo que la sirve.

+ +
+
DENY
+
La página no puede ser mostrada en un marco, independiente del sitio que esté intentándolo.
+
SAMEORIGIN
+
La página sólo puede ser mostrada en un marco del mismo origen que dicha página.
+
ALLOW-FROM uri
+
La página sólo puede ser mostrada en un marco del origen especificado.Tenga en cuenta que en Firefox esto todavía sufre del mismo problema que SAMEORIGIN — no verifica los antecesores del marco para ver si están en el mismo origen.
+
+ +

Ejemplos

+ +
+

Nota: ¡Configurar el tag meta es inútil! Por ejemplo, <meta http-equiv="X-Frame-Options" content="deny"> no tiene efecto. ¡No lo use! Sólo funcionará configurando el encabezado HTTP X-Frame-Options como en los ejemplos anteriores.

+
+ +

Configurando Apache

+ +

Agregue lo siguiente a la configuración de su sitio para que Apache envíe el encabezado X-Frame-Options para todas las páginas:

+ +
Header always append X-Frame-Options SAMEORIGIN
+
+ +

Para que Apache envíe X-Frame-Options  deny , agregue lo siguiente a la configuración de su sitio:

+ +
Header set X-Frame-Options DENY
+
+ +

Para que Apache envíe el encabezado X-Frame-Options para permitir (ALLOW-FROM) un host en específico, agregue esto a la configuración de su sitio:

+ +
Header set X-Frame-Options "ALLOW-FROM https://example.com/"
+
+ +

Configurando nginx

+ +

Para configurar nginx a que envíe el encabezado X-Frame-Options , agregue esto a la configuración, ya sea http, server o location:

+ +
add_header X-Frame-Options SAMEORIGIN;
+
+ +

Configurando IIS

+ +

Para hacer que IIS envíe el encabezado X-Frame-Options, agrege esto al archivo Web.config de su sitio:

+ +
<system.webServer>
+  ...
+
+  <httpProtocol>
+    <customHeaders>
+      <add name="X-Frame-Options" value="SAMEORIGIN" />
+    </customHeaders>
+  </httpProtocol>
+
+  ...
+</system.webServer>
+
+ +

Configurando HAProxy

+ +

Para hacer que HAProxy envíe el encabezado X-Frame-Options, agrege lo siguiente a su configuración front-end, listen, o backend:

+ +
rspadd X-Frame-Options:\ SAMEORIGIN
+ +

Especificaciones

+ + + + + + + + + + + + +
EspecificaciónTítulo
{{RFC("7034")}}HTTP Header Field X-Frame-Options
+ +

Compatibilidad con navegadores

+ + + +

{{Compat("http.headers.X-Frame-Options")}}

+ +

 

+ +

Corrección de traducción por Ervin A. Santos R.

+ +

el 21-Oct-2018

+ +

Vea también

+ + diff --git a/files/es/web/http/headers/x-xss-protection/index.html b/files/es/web/http/headers/x-xss-protection/index.html new file mode 100644 index 0000000000..6ba07cc02a --- /dev/null +++ b/files/es/web/http/headers/x-xss-protection/index.html @@ -0,0 +1,87 @@ +--- +title: X-XSS-Protection +slug: Web/HTTP/Headers/X-XSS-Protection +tags: + - HTTP + - Referencia + - Seguridad + - XSS + - encabezado +translation_of: Web/HTTP/Headers/X-XSS-Protection +--- +
{{HTTPSidebar}}
+ +

El encabezado de respuesta HTTP X-XSS-Protection es una característica de Internet Explorer, Chrome y Safari que impide la carga de una página cuando detecta ataques del tipo Cross-Site ({{Glossary("XSS")}}). Esta protección ya no es necesaria en los navegadores modernos cuando el sitio implementa una fuerte {{HTTPHeader("Content-Security-Policy")}}  que deshabilita el uso de Javascript inline ('unsafe-inline'). Sin embargo da protección a los usuarios de navegadores más antiguos que no soportan  {{Glossary("CSP")}}

+ + + + + + + + + + + + +
Tipo de encabezado{{Glossary("Response header")}}
{{Glossary("Nombre de encabezado prohibido")}}no
+ +

Sintaxis

+ +
X-XSS-Protection: 0
+X-XSS-Protection: 1
+X-XSS-Protection: 1; mode=block
+X-XSS-Protection: 1; report=<reporting-uri>
+
+ +
+
0
+
Desativa el filtro XSS.
+
1
+
Habilita el filtro XSS (generalmente está predeterminado en los navegadores). En caso de detección de un ataque cross-site scripting, el navegador sanitizará a página (eliminará las partes inseguras).
+
1; mode=block
+
Habilita el filtrado XSS. En vez de sanitizar la página, el navegador evitará la visualización de la página en caso de que algún ataque sea detectado.
+
1; report=<reporting-URI>  (Chromium solamente)
+
Habilita el filtro XSS. En caso de que algún ataque de cross-site scripting sea detectado, el navegador sanitizará la página e informará sobre la infracción. Utiliza la funcionalidad de la directiva CSP {{CSP("report-uri")}} para enviar um reporte.
+
+ +

Ejemplo

+ +

Bloquea las páginas en las que se detecta un ataque XSS:

+ +

 

+ +
X-XSS-Protection: 1; mode=block
+ +

 

+ +

PHP

+ +
header("X-XSS-Protection: 1; mode=block");
+ +

Apache (.htaccess)

+ +
<IfModule mod_headers.c>
+  Header set X-XSS-Protection "1; mode=block"
+</IfModule>
+ +

Especificaciones

+ +

No forma parte de ninguna especificación o borrador.

+ +

Compatibilidad de los navegadores

+ + + +

{{Compat("http.headers.X-XSS-Protection")}}

+ +

Vea también

+ + -- cgit v1.2.3-54-g00ecf