Ответ 1
Описание
Во-первых, вам нужно знать, что domain.com/#/about
будет вызывать маршрут "/" вашего сервера, потому что он не читает фрагмент #. Ваш сервер будет отображать базу вашего приложения Backbone.js, а Backbone инициирует маршрут "about".
Итак, вам нужно объявить два маршрута в Express JS:
- /
- /о
код
app.get('/', function(req, res) {
// Trigger the routes 'domain.com' and 'domain.com/#/about'
// Here render the base of your application
});
app.get('/about', function (req, res) {
// Trigger the route 'domain.com/about'
// Here use templates to generate the right view and render
});
Я рекомендую вам 3 ссылки для SEO-совместимости с Backbone.js от Derick Bailey:
- SEO и доступность с помощью HTML5 PushState, часть 1: введение PushState: http://lostechies.com/derickbailey/2011/09/26/seo-and-accessibility-with-html5-pushstate-part-1-introducing-pushstate/
- SEO и доступность с помощью HTML5 PushState, часть 2: прогрессивное улучшение с помощью Backbone.js: http://lostechies.com/derickbailey/2011/09/26/seo-and-accessibility-with-html5-pushstate-part-2-progressive-enhancement-with-backbone-js/
- SEO и доступность с помощью HTML5 PushState, часть 3: видео: http://lostechies.com/derickbailey/2011/10/06/seo-and-accessibility-with-html5-pushstate-part-3-the-video/