我有啓用html5mode的angularjs應用程序。rails angularjs html5mode webrick或者nginx重寫規則配置如何?
我試圖在IE8中運行應用程序,它似乎是URL前綴#!假設是 - 後退按鈕工程等..哈希邦模式
我試圖在現代瀏覽器中運行應用程序,它似乎歷史API也工作。一切都好。
但是,如果我在兩個瀏覽器的地址欄中直接點擊http://localhost:3000/notes
,我會從webrick/rails應用程序獲取路由錯誤。我認爲角將接管這個請求並處理它。
我有服務器端不安裝任何東西的角度指導說:
使用該模式需要URL重寫服務器端的,基本上你 不得不重寫所有的鏈接到應用程序的入口點 (例如index.html)
這就是爲什麼我從webrick得到路由錯誤?如果我能夠設置重寫規則該如何工作?我想如果我重寫像http://localhost:3000/notes -> http://localhost:3000
(索引如果你希望)的「/筆記」 - 我想跳進去的地方已經消失了,棱角分明的應用永遠不會知道去哪裏尋找路線..
如果沒有辦法告訴webrick什麼和如何重寫。你的開發環境如何?
非常感謝。
理解,謝謝你的回答。我想我需要重寫除靜態資產(圖像,腳本..)任何想法如何告訴webrick任何人的所有路線?我想堅持下去.. –
okey,我用nginx來代替乘客。添加這個重寫規則'重寫^ /(?! assets)/ */last;'似乎完美。我不確定是否100%正確的正則表達式,但總比沒有好。 –
更正:'重寫^ /(?! assets)/ last;' –