Приложение Meteor использует Meteor router для навигации и плагин Spiderable, чтобы индексировать страницы поисковыми системами. Spiderable вызывает phantomjs для получения содержимого страницы. Этот подход работает нормально для большинства страниц, кроме домашней страницы.
'/': ->
'home'
'/otherurl': ->
'otherpage'
Я сделал некоторую отладку и обнаружил, что обратный вызов page.evaluate в spiderable.js всегда возвращает false в случае, когда была запрошена домашняя страница
...
setInterval(function() {
var ready = page.evaluate(function() {
if (typeof Meteor !== 'undefined' && typeof(Meteor.status) !== 'undefined' && Meteor.status().connected) {
Meteor.flush();
return Meteor._LivedataConnection._allSubscriptionsReady();
}
return false;
});
...
Какие-либо предложения?