¿Qué contiene exactamente la variable SERVER_PROTOCOL (Apache 2.4)?

¿Qué contiene exactamente la variable SERVER_PROTOCOL (Apache 2.4)?

Tengo un sitio web atendido por Apache 2.4 que debería servir todos los contenidos a través de HTTPS. Ya tengo redirecciones apropiadas que funcionan correctamente, pero no detectan ningún caso patológico. Quería mejorar esa situación y, al hacer mi tarea, me encontré con el siguiente ejemplo eneste documento:

<If "%{SERVER_PROTOCOL} != 'HTTPS'">
    Redirect "/admin/" "https://www.example.com/admin/"
</If>

Modifiqué ligeramente esto para reflejar mi situación:

<If "%{SERVER_PROTOCOL} != 'HTTPS'">
    Redirect "/" "https://www.example.com/"
</If>

Ahora, cuando intento ver cualquier URL de mi sitio, el navegador entra en un bucle de redirección infinito.

Sospecho que el ejemplo en realidad es incorrecto. SERVER_PROTOCOLno parece contener el valor HTTPSbajo ninguna circunstancia. En cambio, según lo que he leído en otros artículos, contiene cosas como HTTP/1.1(como su nombre lo indica).

Entonces mi pregunta es: ¿Qué SERVER_PROTOCOLcontiene exactamente, en qué circunstancias y en qué contexto? ¿Y cuál podría ser la razón por la que el sitio web de documentación oficial de Apache es el único que he encontrado durante varias horas de investigación que enumera HTTPScomo posible valor de SERVER_PROTOCOL?

Respuesta1

Felicitaciones, encontró un error en la documentación de Apache. Considere denunciarlo.

En cuanto a su problema inmediato, parece que está buscando REQUEST_SCHEME:que contendrá

La parte del esquema del URI de la solicitud.

por ejemplo, httpo https.

información relacionada