欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

SSI学习(二)

发布时间:2025/3/15 编程问答 25 豆豆
生活随笔 收集整理的这篇文章主要介绍了 SSI学习(二) 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

1、SSI指令

#config:指定返回到client浏览器的错误消息、日期和文件大小所使用的格式。
#echo:在 HTML 页中插入环境变量的值。
#exec:执行一个应用程序或一条 shell 命令并将输出插入到 HTML 页中。


#flastmod:将文件改动日期插入到 HTML 页中。


#fsize:将文件大小插入到 HTML 页中。
#include:在 HTML 或 ASP 页中包括文件。
由于包括 SSI 指令的文件须要特殊处理,所以必需给 SSI 文件一个 SSI 文件扩展名。
默认的扩展名为 .stm、.shtm 和 .shtml。可是有的SSI指令能够在其它文件里使用。

2、APACHE开启SSI

载入SSI模块 SSI使用的是mod_include的动态系统对象。一般默认的情况安装的情况下都会安装。Linux下能够通过apachectl -l 查看是否包含mod_include.o文件。假设没有,那么须要又一次编译apache。

对于win32版的apache,简单地查看

httpd.conf中LoadModule include_module modules/mod_include.so行是否凝视状态,假设是。去掉# 
配置httpd.conf 使.shtml扩展名的文件启用SSI  去掉下面配置的凝视 #AddType text/html .shtml #AddOutputFilter INCLUDES .shtml 开启包括功能 找到主机DOCUMENT_ROOT文件夹配置下 
Options Indexes FollowSymLinks 
改动为: 
Options Indexes FollowSymLinks Includes 
须要注意的是,ssi能够利用shell来运行命令,因此这个功能是有危急的,它会运行不论什么包括在exec标记中的命令,假设你的用户有权限改动你的网页内容,建议把该功能关闭。

当然你还能够加上IncludesNOEXEC參数,来关闭exec功能,同一时候又保留SSI。

此时改为: Options Indexes FollowSymLinks INCLUDES IncludesNOEXEC

3、demo測试

在DocumentRoot目录下新建两个页面:
index.shtml Time: <!--#echo var="DATE_LOCAL" --> <br> ServerName: <!--#echo var="SERVER_NAME" var="DOCUMENT_URI" --> <br> ENV:<!--#printenv --> <br> <!--#set var="cond" value="true" --> <!--#echo var="cond" --> <br> <!--#if expr="cond='true'" -->condition is true <!--#else -->condition is false <!--#endif --> <br> <!--#include virtual="header.html" -->
header.html head页面被包括进来
通过浏览器訪问:http://localhost:9999/index.shtml就可以查看结果





转载于:https://www.cnblogs.com/zsychanpin/p/6747653.html

总结

以上是生活随笔为你收集整理的SSI学习(二)的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。