我有一个简单的.shtml
文件,我已在其中声明了一个变量。
<!--#set var="testVar" value="12345" -->
但是当我想使用
打印值时<!--#echo var="testVar" -->
它说
无法找到变量'testVar'
有什么问题?我正在使用IIS 7.5,我也在Apache2上测试过,但它也没有用!
答案 0 :(得分:1)
这对我来说很好用:
<!--#set var="testVar" value="12345" -->
<!--#echo var="testVar" -->
您是否正确配置了Apache?您可能需要启用mod_include。以下代码应在正确配置后输出日期:
<!--#echo var="DATE_LOCAL" -->
答案 1 :(得分:1)
我有同样的问题。就我而言,我在主文件中设置了一个变量,并尝试在包含的模板中读取它。
解决方案是在<!--#set
声明之后放置<!DOCTYPE
。
答案 2 :(得分:1)
IIS不支持您的代码。
<!--#set var="testVar" value="12345" -->
IIS不支持#set,这就是它响应的原因。 &#34;变量&#39; testVar&#39;无法找到&#34;,因为它从未被创建过。
Windows服务器和Apache服务器具有相同的模块名称(SSI),并且它们使用相同的语法。但! Apache服务器支持#set和#if #else等其他命令,Windows服务器没有。所以混乱已经完成。
有关可在IIS中使用的命令列表: MSDN blog about SSI on IIS
答案 3 :(得分:0)
我认为你需要在它前面用'$'来引用你的变量,如下所示:
<!--#echo var="$testVar" -->
答案 4 :(得分:0)
尝试,
<!--#echo encoding="entity" var="testVar" -->
如果没有,请使用$ testVar确保将变量视为变量。