设为首页 收藏本站
查看: 621|回复: 0

[经验分享] Apache SSI详解及应用

[复制链接]

尚未签到

发表于 2015-8-6 09:40:11 | 显示全部楼层 |阅读模式
  什么是 SSI?
SSI(Server Side Includes),是嵌套在 HTML 网页中的指示语句,由后台服务器进行代码的解释计算。使用 SSI 可以动态的创建一部分网页内容而不需要编写复杂的 JSP/ASP/PHP 等程序。SSI 是如此的小巧以至于不应算作一门语言,因为他远没有JSP/ASP/PHP 等程序那么复杂,只有一些极其有限的语法规则。
很多 HTTP Server 程序都支持 SSI,可能语法稍有不同,比如: IIS/Novell HTTP Server 等等,大同小异,本文要说明的是 Apache 2.0 的 SSI。闲话少说,我想告诉大家的是,这是一篇实践经验总结性的文章,后文中的示例解决方案都是来自实际的网站应用中。
  开启SSI功能需先对apache配置文件(httpd.conf)进行设置 详情请百度
  
AddType text/html .ssi #这里可以是 .shtml 或其他 不一定要 .ssi
Options Includes
AddOutputFilterByType INCLUDES;DEFLATE text/html

  测试SSI是否成功启用 编辑文件
test.ssi

  ~~特别注意 ,由于多了个空格,所以ssi指令被当成注释了。 切记
浏览器访问 http://localhost/test.ssi 能看到打印当前时间 说明SSI已启用
  关于SSI的更多参考资料 ~~~这些文档也可以在 Apache的安装文件夹找到
Apache Tutorial: Introduction to Server Side Includes
http://httpd.apache.org/docs/2.0/howto/ssi.html
  Apache Module mod_include
http://httpd.apache.org/docs/2.0/mod/mod_include.html
  SSI语法:
  ~~fn可以理解成函数或者指令
例子:
http://  ~~~环境变量习惯大写
  ~~~ virtual的值可以是相对路径或绝对路径 如 virtual="/ssi/footer.ssi"
~~~file的值只能是相对路径
  ~~~ 设置自定义变量
  SSI 语句是直接嵌套在 HTML 页面中的,可以放置在任意的位置。所以 SSI 语句前后采用 HTML 注释的写法,这样一旦服务器关闭了对 SSI 的支持,此时访问页面的话,也不会直接在网页上显示出不必要的代码。
  ~~~SSI不区分大小写,环境变量用大写是很好的习惯; SSI中只有一种数据类型:字符串; SSI中的转义符是 \ ,字符串可以用双引号或单引号包裹 ~~同JS
  SSI 中的变量分为自定义变量和环境变量。
自定义变量使用 set 命令来创建:
环境变量是系统已经存在的一些默认的变量和变量值,可以直接使用。  
DATE_LOCAL 就是一个环境变量,用来显示当前本地时间。类似的环境变量还有很多,比如常用HTTP_HOST、SERVER_NAME、DOCUMENT_URI、DOCUMENT_NAME 等等。
  查看所有环境变量
由于无换行所以按ctrl+u,以网页源代码的方式查看更清晰点
------- 应用示例: --------------




Learning Apache SSI


  

  
Left Navigation
  Right Navigation
  
This is "

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-94619-1-1.html 上篇帖子: apache module get post data 下篇帖子: Apache 的 httpd.conf 详解
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表