Abbiamo una SPA angolare che utilizza nodo, nginx e prerender.io. La nostra home page è impostata come un URL univoco (ad esempio www.foo.com/bar) e nel nostro routing, questa home page acquisisce il reindirizzamento predefinito di tutti gli URL relativi alla radice non specificatamente indirizzati diversamente.nginx/angular/node.js URL root con prerender.io
Il nostro problema è questo: l'url radice www.foo.com o www.foo.com/ ritorna con una pagina vuota raschia per google e Facebook. Il nostro indice è un modello base di ng-include che tutte le pagine sono inserite all'interno, quindi ha senso che il nostro URL di root ritorni senza alcun contenuto di corpo html reale. HTML principale nell'indice:
<div class="st-content">
<div ng-view="" class="main-content" id="mainView"></div>
<div ng-include="'/views/footer.html'"></div>
</div>
Inoltre, abbiamo cercato altre soluzioni senza risultati positivi:
- tag base nella testa dell'indice collegamento a '/', che non rompere nulla ... è anche fatto non risolverlo
- 307 reindirizzamento, non ha prodotto risultati
- configs nginx guardare bene
Nota: per iscritto a questa domanda mi venne in mente di cambiare il percorso a casa per ‘/ ':
.when('/', {
templateUrl: '/views/foo-bar.html',
title: ‘Foo Bar',
pageDescription: ‘Lorem Ipsum Foo Bar'
})
.
.
.
.otherwise({
redirectTo: '/'
});
Se cambiato a questo sarà il graffio della Casa ancora così vuoto? Non è fondamentalmente lo stesso problema di redirect js, ma con meno caratteri?
non ho avuto se nginx è configurato per rispondere con il ' index.html' per tutte le richieste su 'foo.com' o' www.foo.com'. È? A proposito, stai usando la modalità HTML5? –
Puoi inviarmi l'URL in questione? Sarei felice di testarlo e vedere cosa sta succedendo lì per assicurarsi che tutto sia impostato correttamente. [email protected] –
@DanM. Nginx è configurato per il reindirizzamento 301 per tutte le richieste su foo.com. www.foo.com viene quindi inviato a node.js. Strace-ing nginx e node mostrano che nginx è appropriatamente proxy al server nodo, a quel punto vediamo le richieste e le risposte del nodo. Inoltre, stiamo usando la modalità HTML5. –