2014-06-05 67 views
0

我有一個紅寶石+西納特拉網站,大部分文件都是靜態的HTML,這意味着它們可以通過將http://www.mydomain.com/features.htmlhttp://www.mydomain.com/pricing.html,等...(我用末日的幾個動態網頁)是否有可能提供沒有文件擴展名的靜態HTML?

訪問我想要做的是提供這些靜態HTML文件,而無需其文件擴展名。所以去http://www.mydomain.com/features會顯示,就好像我目前訪問http://www.mydomain.com/features.html一樣。

我試圖簡單地刪除我的.html文件擴展名,但是當試圖在瀏覽器中打開這些文件時,瀏覽器下載下載文件而不是在屏幕上顯示它。

是否可以在沒有文件擴展名的情況下繼續使用我的靜態.html文件?謝謝!

回答

1

如果你這樣做:

require 'sinatra' 

get '/:file_name' do |fname| 
    send_file(
    File.join(settings.public_folder, "#{fname}.html") 
) 
end 

...然後要麼網址:

http://www.mydomain.com/features.html
http://www.mydomain.com/features

將返回相同的頁面。

settings.public_folder:默認情況下,這被認爲是一個目錄 命名的根目錄中的「公共」 ... http://www.sinatrarb.com/configuration.html

如果你定義自己的動態網頁的路徑在那條路線上方,那麼它們將首先匹配。

相關問題