【发布时间】:2009-08-15 17:45:03
【问题描述】:
当我使用 SSI 指令时,有没有办法用 HTML 实体转义变量?
<META HTTP-EQUIV="Refresh" CONTENT="10; URL="/index.shtml?r=<!--#echo var="HTTP_REFERER" -->">
谢谢你的建议!
【问题讨论】:
标签: apache escaping echo ssi directive
当我使用 SSI 指令时,有没有办法用 HTML 实体转义变量?
<META HTTP-EQUIV="Refresh" CONTENT="10; URL="/index.shtml?r=<!--#echo var="HTTP_REFERER" -->">
谢谢你的建议!
【问题讨论】:
标签: apache escaping echo ssi directive
请参阅 http://httpd.apache.org/docs/2.2/mod/mod_include.html 的 mod_include 文档中“回声元素”下的“编码”:
指定 Apache 在输出变量之前应如何编码包含在变量中的特殊字符。如果设置为 none,则不会进行编码。如果设置为 url,则将执行 URL 编码(也称为 %-encoding;这适用于在链接中的 URL 等中使用)。在 echo 元素的开头,默认设置为 entity,从而产生实体编码(这适用于块级 HTML 元素的上下文,例如一段文本)。这可以通过添加一个编码属性来更改,该属性将一直有效,直到遇到下一个编码属性或元素结束,以先到者为准。
encoding 属性必须在相应的 var 属性之前才有效,并且只有 ISO-8859-1 字符编码中定义的特殊字符才会被编码。如果正在使用不同的字符编码,则此编码过程可能不会产生预期的结果。
【讨论】: