我需要一种简单的方法来生成静态网页,这样我就可以用Apache或Nginx为它们提供服务。目前我正在使用SproutCore的构建工具(Abbot)来生成静态页面,但这有点麻烦,因为它是为构建SproutCore应用程序而设计的,而不是非SproutCore HTML页面。
以下是我的要求:
必须组合和缩小
以下是我找到的可能的解决方案:
使用Ruby on Rails创建站点,然后使用wget获取所有资源,就像http://usefulfor.com/ruby/2009/03/23/use-rails-to-create-a-static-site-rake-and-subversion/
对此有什么想法吗?
经过较长的评估过程后,我决定使用中间人。它做到了这一点,我喜欢它的简单性和我可以使用现有的Rack组件的事实。
诚挚的问候,
Pekka Mattila
发布于 2011-08-21 13:55:36
我是中间人的创建者,希望能帮助你更好地使用中间人。我的主要目标是为用户提供Rails的强大功能,但专注于静态开发。中间人的一些实际代码是Ab的简化版本
发布于 2011-08-21 23:07:58
下面是我要做的:
独立乘客将读取URL,查看/public中是否有包含.html的相应文件,并提供该文件。如果没有找到,它将调用Rails并生成页面。本质上就是页面缓存,可以选择使用或不使用.html发布URL。在乘客文档中有一节专门关于页面缓存。
就组合和缩小js和css而言,here's a good stackoverflow thread。
Rails具有出色的i18n/l10n支持。
Rails模板引擎非常易于使用。如果您愿意,也可以使用HAML。
对于你的第三和第四点,我有点困惑。您希望将css和js组合在一起,但又希望每个js都有自己的URL。在Rails中,资产标记上的"cache => true“指令负责添加一个查询字符串参数,该参数会在内容发生变化时发生变化,这是一个相当传统的方案。我不确定你是在什么环境下工作的,在什么情况下这是不可行的。我使用过的任何CDN都可以很好地使用它,就像正确实现HTTP规范的web服务器一样。无论如何,更改URL中的实际路径或文件都需要更改对它的所有引用。也许我误会了?
发布于 2012-02-14 04:43:00
我想Monkeyman有你需要的模板引擎。把它想象成中间人的Scala小弟弟。目前还没有成熟或丰富的功能,但我们最终会做到的。当前版本支持HAML、Jade、用于布局的SSP、用于内容的Markdown以及其他一些东西。
https://stackoverflow.com/questions/7131503
复制相似问题