Técnica Scripts de servidor WCAG 2.2
SVR2Usar .htaccess para que la versión no accesible solo se abra desde la accesible
Nombre oficial en el W3C: Usar .htaccess para garantizar que solo se pueda acceder al contenido no conforme desde contenido conforme
En pocas palabras
A veces un contenido no accesible se publica junto a una versión alternativa que sí lo es. Con un fichero .htaccess en un servidor Apache se controla cómo se llega a él. Si alguien entra directamente a la versión no accesible, el servidor lo lleva a la accesible o a una página con las dos opciones.
Por qué es importante
Las WCAG permiten publicar contenido que no cumple si existe una versión alternativa conforme: otra versión con la misma información que sí es accesible. Pero la persona tiene que poder encontrarla.
Si alguien llega a la versión no accesible desde un buscador o un enlace compartido, puede quedarse atascado. Esta técnica evita ese callejón sin salida.
Cómo se hace
- Identifique cada contenido no accesible y su versión accesible. Por ejemplo, una presentación interactiva y su versión en HTML.
- Agrupe los ficheros no accesibles en una carpeta propia o identifíquelos por su extensión.
- En esa carpeta, cree un fichero
.htaccessque compruebe desde qué página llega la petición. Ese dato viaja en la cabeceraReferer. - Si la petición no viene de la versión accesible ni de una página que enlace a ambas, redirija a la versión accesible o a una página índice con todos los formatos.
- Pruebe la regla con enlaces directos, favoritos y resultados de búsqueda.
Cómo comprobarlo
- Copie la dirección del contenido no accesible y péguela en una ventana privada del navegador.
- Compruebe que el servidor muestra la versión accesible o una página con enlaces a las dos versiones.
- Entre ahora desde la página accesible y compruebe que el enlace a la otra versión sí funciona.
Ver el texto completo del W3C (traducción al español)
Esta es una traducción no oficial al español de la técnica SVR2 de Techniques for WCAG 2.2, del W3C. Puede contener errores. El único documento oficial y normativo es la versión original en inglés, publicada en el sitio web del W3C.
Aplicabilidad
Contenido alojado en un servidor web que admite .htaccess (normalmente Apache) en el que se proporciona una versión conforme del contenido como alternativa a una versión no conforme.
Descripción
El objetivo de esta técnica es garantizar que los usuarios siempre puedan acceder a una versión accesible del contenido cuando también existen versiones no conformes. Siempre que el contenido se proporcione en un formato que no cumpla las WCAG, el sitio en su conjunto puede seguir siendo conforme si se proporcionan versiones alternativas del contenido inaccesible. El requisito de conformidad 4 exige que las versiones alternativas puedan obtenerse a partir del contenido no conforme o de su URI.
Dado que no siempre es posible proporcionar un enlace accesible desde dentro del contenido no conforme, esta técnica describe cómo los autores pueden usar el módulo «mod_access» de Apache para garantizar que al contenido no conforme solo se pueda acceder desde los URI que sirven como versiones alternativas del contenido no conforme o desde páginas que incluyen enlaces tanto a la versión no conforme como a la versión alternativa.
Ejemplos
Usar el módulo mod_redirect de Apache para redirigir las peticiones
El siguiente fichero .htaccess usa el módulo mod_redirect de Apache para redirigir las peticiones de "inaccessible.html" a "accessible.html", salvo que la petición provenga de "accessible.html".
# If the request for inaccessible content comes from a file
# called accessible.html, then set an environment variable that
# allows the inaccessible version to be displayed.
SetEnvIf Referer .*(accessible.html)$ let_me_in
<FilesMatch ^(inaccessible.html)$>
Order Deny,Allow
Deny from all
Allow from env=let_me_in
</FilesMatch>
# If the request comes from anyplace but accessible.html, then
# redirect the error condition to a location where the accessible
# version resides
ErrorDocument 403 /example_directory/accessible.html
Redirigir las peticiones directas de ficheros
Este ejemplo supone una estructura de directorios en la que los documentos están disponibles en varios formatos. Uno de los formatos no cumple las WCAG en el nivel declarado y usa la extensión de fichero "jna" (Just Not Accessible, «simplemente no accesible»). Todos estos ficheros se guardan en una carpeta llamada "jna" con un fichero .htaccess que garantiza que cualquier petición directa de un fichero con la extensión .jna, procedente de páginas en las que las versiones inaccesibles no estén ya disponibles, se redirija a una página de índice que enumera todos los formatos disponibles.
# If the request for inaccessible content comes from a file at
# https://example.com/documents/index.html, then set an environment
# variable that allows the inaccessible version to be displayed.
SetEnvIf Referer ^https://example.com/documents/index.html$ let_me_in
<FilesMatch ^(.*\.jna)$>
Order Deny,Allow
Deny from all
Allow from env=let_me_in
</FilesMatch>
# If the request comes from anyplace but https://example.com/documents/index.html, then
# redirect the error condition to a location where a link the accessible
# version resides
ErrorDocument 403 https://example.com/documents/index.html
Pruebas
Procedimiento
- Identificar las páginas que no cumplen las WCAG en el nivel de conformidad declarado en las que las alternativas accesibles se sirven mediante ficheros .htaccess.
- Visitar el URI del contenido no conforme.
-
Verificar que la página resultante es una de las siguientes:
- una versión alternativa conforme del contenido no conforme
- una página que incluye un enlace tanto a la versión alternativa conforme como al contenido no conforme
Resultados esperados
- La comprobación n.º 3.1 o la n.º 3.2 es verdadera.
Recursos
- Apache Module mod_env (módulo mod_env de Apache)
- Authentication, Authorization and Access Control (autenticación, autorización y control de acceso en Apache)
- Apache Tutorial: .htaccess files (tutorial de Apache sobre ficheros .htaccess)
Cómo lo comprobamos en ADDAW
En cada auditoría de ADDAW revisamos esta técnica página a página y le entregamos los errores con capturas y la forma de corregirlos.
Basado en la técnica SVR2 del W3C (WCAG 2.2). Explicación y ejemplos: ADDAW. Traducción no oficial del texto del W3C © W3C, licencia de documentos del W3C. ¿Ha visto un error? Escríbanos.