【发布时间】:2018-01-14 11:27:41
【问题描述】:
我正在开发 html 网站。我有30多页。所以我正在寻找一种解决方案,我必须在一个页面中使用菜单,然后在所有其他页面上调用该菜单,所以下次我必须进行一些更改时,我只会在一个文件中进行更改。
通过谷歌,我知道我可以将我的文件扩展名从 html 转换为 php 然后使用 <?php include 'menu.php' ?> 。但我不想在这里更改扩展名。
因此出现了另一种解决方案,即服务器端包含 (SSI)。
但这里似乎没有任何改变。 假设我的菜单 div 是:
<div class="menu">
<div class="page-logo">
<a href="dashboard.html">
<img src="assets/img/logo.png" alt="logo"/>
</a>
</div>
</div>
所以我将菜单 Div 代码复制到单独的文件中并将其保存为 menu.html 然后像这样使用 SSI
<div class="menu">
<!-- #include virtual="/menu.html" -->
</div>
但是我的页面上没有出现徽标。我想知道这对其他人是如何工作的,因为据我所知 SSI 命令在 cmets 标签 <!-- COMMENTS -->
任何想法,我在上面做错了什么或者我如何在所有保留 html 扩展名的页面上使用相同的菜单?
我用过这个.htaccess文件
AddType text/html .shtml
AddHandler server-parsed .shtml
Options Indexes FollowSymLinks Includes
AddHandler server-parsed .html .htm
【问题讨论】:
标签: html ssi server-side-includes