2012-09-16 100 views
0

回答我的問題給我不停地奔跑與Backbone.js的問題直接頁訪問...骨幹:沒有哈希

在我的骨幹應用,我希望用戶能夠直接導航到內部「頁面」,而不必在URL中輸入散列(#)。即使支持pushStateBackbone Boilerplate似乎並不支持這一點。

顯然,用戶只要從主頁開始就可以到達任何位置。或者,他們可以直接跳到內部頁面,但前提是直接在域後面或在初始斜槓後面有散列(#)。

我找到了這個問題的解決方案,似乎工作。我在這裏爲其他人發佈相同的問題,看看有沒有人知道更好的方法,並且因爲我找不到在別處解決的確切問題。

回答

1

在嘗試破解Backbone Boilerplate一段時間後,我發現BBB只是需要散列纔會在那裏。

所以我的解決方案是將一個重寫規則附加到我的.htaccess文件中,該文件說明如果找不到請求的頁面,請在域之後再次嘗試使用散列。

<IfModule mod_rewrite.c> 
    RewriteBase/
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.+)$ /#$1 [R,L,NE] 
</IfModule> 

到目前爲止,它似乎工作正常。這一直困擾我一會兒,我想其他人可能在同一條船上。

如果有人知道更好的方法來完成此任務,或者我的解決方案可能導致的任何問題,請隨時回覆。