2013-02-08 60 views
0

我对Ruby/Sinatra/Rack相当陌生。使用MiddlemanApp几个月。使用Sinatra/Rack(在MiddlemanApp中)将PHP文件作为静态文本/ html提供?

我需要在我的中间商静态网站中的几个PHP页面。我希望能够在运行middleman server的同时在浏览器中预览这些页面。 我不需要解析或处理PHP文件,只需按预览服务器中的内容类型和text/html一样提供即可。

在Apache配置中,很容易告诉Apache将给定的文件扩展名视为另一种类型的文件。但是我不知道在Sinatra/Middleman/Rack上甚至可以从哪里开始。

所以:

我可以设置西纳特拉或机架就可以提供PHP文件的静态HTML?我不希望或期望Sinatra/Rack解析PHP。我只想在运行middleman server时将PHP嵌入/不变为静态HTML。

我知道我可以运行middleman build并使用Apache来提供和解析这些文件,但是这对于middleman build每20秒来说就很单调乏味。

编辑

好了,我不明白的是,以上的默认行为。我会修改我的问题到这:

  • 我如何得到Sinatra Middleman应用服务index.php作为索引文件在预览服务器?

说我有source/test/index.php.erb和没有source/test/index.html.erb。我希望middleman server针对/ test /的请求提供/test/index.php。

回答

0

不完全确定你的问题是什么,但你的意思是这样的吗?

get '/test' do 
    erb :'test/index.php' 
end 

如果你有你的观点名为index.php.erb /文件test文件夹

+0

是的,我希望这样的事情会工作。但中间人似乎并不喜欢那里的东西。 (对不起,我的问题有点失控) – jevets 2013-02-08 20:09:47

+0

@jevets我不太了解Middleman应用程序,但可以通过将它们放在“公共”文件夹中来提供静态文件。将index.php放在public/test中,你可以从example.com/test/index.php得到它 – AlexQueue 2013-02-08 20:12:47

+0

谢谢。我相信这个问题与Middleman如何使用Sinatra有关。我相信我需要写一个小扩展来告诉Sinatra将index.php文件作为目录索引。就Sinatra而言,我相信你的回答就是我一直在寻找的东西,但这对中间人来说并不合适。 – jevets 2013-02-08 20:22:08