我有一个小型静态网站,本网站的每个页面都有一个菜单和一个页脚。
确保菜单和页脚中的更改只需要在一个地方完成的最佳方法是什么,这使我能够轻松更新包含它们的所有页面。
我正在寻找某种简单的模板系统,使我能够将文件组合在一起。
我看了一下ruby .erb文件,但它们看起来太复杂了,因为我必须安装rails并使我的web服务器能够使用它。
答案 0 :(得分:3)
您可以查看一些Web Templating Systems并根据您熟悉的语言/平台做出决定
答案 1 :(得分:3)
对于一个简单的网站,执行server side includes没有错。只需为您的菜单和页脚创建HTML代码段(它们甚至不必是完全形成的HTML)。然后在每个页面上添加相应的
<!-- #include virtual="/footer.html" -->
声明在适当的位置。由于你在Debian服务器上,我很确定Apache默认已经启用了这个。
这可能看似陈旧,但我的妻子在一家为小型网站进行大量维护工作的公司工作,他们仍然采用这种方法,并且工作得很好。
如果您的网站超过10页,那么我会介绍一些模板系统,只是为了减少记住在您创建的每个新页面上添加SSI的需要。
答案 2 :(得分:1)
您是否需要在服务器端组合这些?
对于一个小的静态站点,我只是创建了一个小的本地脚本(我使用了PowerShell,但随意使用你想要的任何东西或者随意使用),它从代表模板的本地源文件进行部署。虽然在模板方面可能不像完整的模板引擎那样灵活,但它很容易,快速并且在很长一段时间内都能很好地工作。它也在本地运行,除了服务器端的简单Web服务器之外不需要任何东西,减少了潜在的漏洞。
答案 3 :(得分:1)
我使用Octopress。它是一个构建在Jekyll之上的静态站点生成器,它使用markdown作为内容标记,并使用特定的模板语言来构建页面。因此,如果您只需要一个包含几页的网站,您应该尝试jekyll。
由于所有站点生成都在客户端完成,然后通过rsync部署站点,因此系统需要使用ruby。
答案 4 :(得分:1)
尝试在互联网上搜索static site generator
。它提供了各种语言的十几种解决方案:Python,Ruby,PHP,Haskell,Sh,Bash ......
答案 5 :(得分:1)