返回顶部
首页 > 资讯 > 精选 >如何理解HTML开发中.html和.htm和.shtml以及.shtm的区别与联系
  • 467
分享到

如何理解HTML开发中.html和.htm和.shtml以及.shtm的区别与联系

2023-06-08 02:06:54 467人浏览 独家记忆
摘要

如何理解html开发中.html和.htm和.shtml以及.shtm的区别与联系,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。大家都知道,我们每天浏览的网页或者网站或者W

如何理解html开发中.html和.htm和.shtml以及.shtm的区别与联系,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

大家都知道,我们每天浏览的网页或者网站或者WEB页都有自己的后缀名,而不同的后缀名则对应着不同的文件格式和不同的规定、协议、用法,其中最常见的后缀名是.html和.htm,还有常见的.shtml和.shtm格式。我们大多数开发者只知道他们区别不大,而且可以任意使用,殊不知这里面还是有一些联系的。
首先,介绍下.html和.htm
html是当今网页文件的一种最基本的,也是使用最广泛的保存格式,是一种超文本标记语言,是WWW的描述语言,与PHPjsp、asp之类的动态网页技术所保存的文本格式不同,页面中没有嵌入任何服务器端要执行的语句,是一种静态的页面格式,一般的浏览器都能够直接解释并显示。
关于htm,其实与html并没有本质意义上的区别,只是为了满足DOS的8+3(文件名不能超过8个字符,扩展名不能超过3个字符)的文件名名规范。因为一些老的系统(32位)不能识别4位文件扩展名,所以某些服务器要求.html的最后一个l省略。浏览器能自动识别和打开这些文件,但编写这些网页网址的时候必须是对应的,也就是说index.html和index.htm是两个不同的文件,对应着不同的地址。

其次,介绍下.shtml和.shtm
关于shtml,是一种基于SSI技术支持的文件,也就是Server Side Include--SSI服务器段的包含指令,一些Web Server如果有SSI功能的话就会对shtml文件进行特殊的招待,服务器首先会先扫描一次shtml文件看下有没有特殊的SSI指令的存在,如果有的话就按照Web Server的设定规则解释SSI指令,然后解释完后就会跟普通的HTML被浏览器解释并显示。
关于shtm,shtm与shtml的关系和htm与html的关系大致相似,这里不再赘述...

最后,html或htm与shtml或shtm的关系
html或者htm是一种静态的页面格式,也就是说不需要服务器解析其中的脚本,或者说里面没有服务器端执行的脚本,而shtml或者shtm由于是基于SSI技术,当有服务器端执行脚本时被当作一种动态语言来看待,就如php、JSP或者ASP一样。
当shtml或者shtm中不包含服务器端可执行脚本时其作用和html或者htm是一样的。

SHTML和HTML的区别,如果用一句话来解释就是:SHTML 不是HTML而是一种服务器 api,shtml是服务器动态产成的html.
虽然两者都是超文本格式,但shtml是一种用于SSI技术的文件。 也就是Server Side Include--SSI 服务器端包含指令。 如果Web Server有SSI功能的话(大多数(尤其是基于Unix平台)的WEB服务器如Netscape Enterprise Server等均支持SSI命令)。
会对shtml文件特殊招待。 先扫一次shtml文件看没有特殊的SSI指令现在。
有就按Web Server设定规则解释SSI指令。 解释完后跟一般html一起掉去客户端。

shtml
使用SSI(Server Side Include)的html文件扩展名,SSI(Server Side Include),通常称为"服务器端嵌入"或者叫"服务器端包含",是一种类似于ASP的基于服务器的网页制作技术。

SSI工作原理:
将内容发送到浏览器之前,可以使用“服务器端包含 (SSI)”指令将文本、图形或应用程序信息包含到网页中。例如,可以使用 SSI 包含时间/日期戳、版权声明或供客户填写并返回的表单。对于在多个文件中重复出现的文本或图形,使用包含文件是一种简便的方法。将内容存入一个包含文件中即可,而不必将内容输入所有文件。通过一个非常简单的语句即可调用包含文件,此语句指示 Web 服务器将内容插入适当网页。而且,使用包含文件时,对内容的所有更改只需在一个地方就能完成。

因为包含 SSI 指令的文件要求特殊处理,所以必须为所有 SSI 文件赋予 SSI 文件扩展名。默认扩展名是 .stm、.shtm 和 .shtml

Web 服务器在处理网页的同时处理 SSI 指令。当 Web 服务器遇到 SSI 指令时,直接将包含文件的内容插入 HTML 网页。如果“包含文件”中包含 SSI 指令,则同时插入此文件。除了用于包含文件的基本指令之外,还可以使用 SSI 指令插入文件的相关信息(如文件的大小)或者运行应用程序或 shell 命令。

网站维护常常碰到的一个问题是,网站的结构已经固定,却为了更新一点内容而不得不重做一大批网页。SSI提供了一种简单、有效的方法来解决这一问题,它将一个网站的基本结构放在几个简单的HTML文件中(模板),以后我们要做的只是将文本传到服务器,让程序按照模板自动生成网页,从而使管理大型网站变得容易。

所以,利用SHTML格式的页面目的和 ASP 差不多,但是因为是 API 所以运转速度更快,效率更高,比ASP快,比HTML慢,但由于可以使用服务器端包含,因此使页面更新容易(特别是批量更新banner,版权等),想象一下吧,你有一段 HTML,要在中间穿插一些特殊的服务端脚本,比如插入其他 HTML 段落,你选择 ASP 来完成这个任务,但是如果任务更繁重,需要更多的时间,比如 5 s,这个时候你不用 ASP 而用 SHTML,或许处理时间就只用 4 s 了.

关于如何理解HTML开发中.html和.htm和.shtml以及.shtm的区别与联系问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注编程网精选频道了解更多相关知识。

--结束END--

本文标题: 如何理解HTML开发中.html和.htm和.shtml以及.shtm的区别与联系

本文链接: https://lsjlt.com/news/251041.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 如何理解HTML开发中.html和.htm和.shtml以及.shtm的区别与联系
    如何理解HTML开发中.html和.htm和.shtml以及.shtm的区别与联系,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。大家都知道,我们每天浏览的网页或者网站或者w...
    99+
    2023-06-08
  • HTML开发中.html和.htm和.shtml 以及 .shtm四种扩展名的文件区别是怎样的
    本篇文章为大家展示了HTML开发中.html和.htm和.shtml 以及 .shtm四种扩展名的文件区别是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。很多朋友刚开始接触网页制作,发现这么多...
    99+
    2023-06-08
  • 如何理解JRE和JVM的区别及有什么联系
    这篇文章将为大家详细讲解有关如何理解JRE和JVM的区别及有什么联系,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。你对JRE和JVM的概念是否熟悉,这里和大家分享一下两者的区别,所有的Jav...
    99+
    2023-06-17
  • 移动前端开发和web前端开发的区别该如何理解
    这篇文章给大家介绍移动前端开发和web前端开发的区别该如何理解,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。既然都是前端开发,两者肯定有紧密的联系,但是楼主主要询问区别,我就先简单聊一下相同点,之后在着重分析不同点。 ...
    99+
    2023-06-05
  • 如何理解.NET框架与COM的背景和历史以及关系的发展
    今天就跟大家聊聊有关如何理解.NET框架与COM的背景和历史以及关系的发展,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。.NET框架与COM:背景和历史可复用软件不是一个新概念。八年...
    99+
    2023-06-17
  • 如何理解ajax请求post和get的区别以及get post的选择
    这篇文章主要讲解了“如何理解ajax请求post和get的区别以及get post的选择”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何理解ajax请求p...
    99+
    2024-04-02
  • 如何深入理解Java多线程与并发框中线程和进程的区别
    如何深入理解Java多线程与并发框中线程和进程的区别,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。线程和进程的区别1. 资源调度单位在计算机中,进程是程序运行所...
    99+
    2023-06-05
  • Java开发中的响应速度和框架有什么联系?Git如何参与其中?
    在Java开发中,响应速度是一个非常重要的考量因素。而框架则是提升Java开发效率和优化响应速度的一种方式。在本文中,我们将探讨Java开发中的响应速度和框架之间的联系,并介绍Git如何参与其中。 一、响应速度和框架的联系 在Java开发中...
    99+
    2023-06-17
    git 框架 响应
  • 如何理解ajax中的async属性值同步和异步及同步和异步区别
    这篇文章给大家介绍如何理解ajax中的async属性值同步和异步及同步和异步区别,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。jquery中ajax方法有个属性async用于控制同步和...
    99+
    2024-04-02
  • 如何解决Ajax访问session的值不一致以及HTTP协议中GET和POST的区别
    如何解决Ajax访问session的值不一致以及HTTP协议中GET和POST的区别,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。今天在做...
    99+
    2024-04-02
  • C#开发中如何处理集合和数据结构的操作问题及解决
    C#开发中如何处理集合和数据结构的操作问题及解决,需要具体代码示例在C#开发中,处理集合和数据结构的操作问题是非常常见的。正确地处理这些问题可以提高代码的效率和可读性。本文将讨论一些常见的集合和数据结构操作问题,并给出相应的解决方案和代码示...
    99+
    2023-10-22
    集合处理:C#集合操作 C#集合与数据结构解析
  • C#开发中如何处理集合和数据结构的操作问题及解决方法
    C# 开发中如何处理集合和数据结构的操作问题及解决方法引言:在 C# 开发中,集合和数据结构是非常重要的概念。它们可以帮助我们组织和管理数据,提高程序的效率和可维护性。然而,对于初学者来说,可能会遇到一些集合和数据结构的操作问题。本文将介绍...
    99+
    2023-10-22
    - 查找:find - 添加:add - 删除:remove - 数组:array
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作