nginx SSI: ¿cómo hacer eco de html?

nginx SSI: ¿cómo hacer eco de html?

Como prueba de cordura, al principio de mi página HTML, estoy intentando hacer un SSI muy simple echopara indicarle al navegador que SSI está funcionando:

índice.html:

<script>var ssi_enabled = false</script>
<!--# set var="test" value="<script>ssi_enabled=true</script>" -->
<!--# echo var="test" -->

luego más tarde en JS:

if (!ssi_enabled) { console.log("SSI is not enabled!"); }

Pero cuando nginx echoes la cadena, las etiquetas HTML se desinfectan de la siguiente manera:

&lt;script&gt;ssi_enabled=true&lt;/script&gt;

No puedo encontrar nada en los documentos de nginx que indique cómo editar echoHTML sin formato.

Sí, sé que podría importar un archivo html, pero estaba tratando de evitarlo porque eso agrega más complejidad. Parece que esto se podría hacer, pero me falta el parámetro correcto para echo.

Gracias

Respuesta1

nginxtiene un encodingparámetro para el echocomando (cf.comandos admitidos), que decide cómo escapar del texto. Puede tener tres valoresninguno(que es lo que estás buscando),URLy el valor predeterminadoentidad. Compara los resultados de:

<!--#set var="GREETING" value="<h1><strong>Hello <em>&World</em></strong></h1><p>àäáąåǎâ</p>" -->
<!--#echo var="GREETING" encoding="none" -->
<!--#echo var="GREETING" encoding="url" -->
<!--#echo var="GREETING" encoding="entity" -->

información relacionada