2013-02-08 63 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