以下代码应显示端口或服务器名称,而不是两者。
无论如何,我总是得到两个?
<!--#if expr="${SERVER_PORT} = 80" -->
<!--#echo var="SERVER_PORT"-->
<!--#else -->
<!--#echo var="SERVER_NAME"-->
<!--#endif -->
我也尝试了下面的内容,但没有任何乐趣:
<!--#if expr="${SERVER_PORT} = '80'" -->
<!--#if expr="${SERVER_PORT} = /80/" -->
我该如何运作?
答案 0 :(得分:4)
如果您使用的是IIS 6,请检查是否允许服务器端包含:
如果是,请检查网站属性中是否启用了SSI脚本映射:
.shtm,
shtml and .stm
是否已映射到
C:\WINDOWS\system32\inetsrv\ssinc.dll
并且动词设置为GET
和POST
。<强>更新强>
IIS不支持#if/#else/#endif
构造或#set
。 IIS 6.0的Server Side Include指令在此处记录:
这些用于所有意图和目的与IIS 5.1中使用的相同。
您尝试使用的指令在Apache上受支持,但您应该检查您的主机/管理员以确保它们已启用。有关详细信息,请参阅: