Wpis z mikrobloga

@5z7k9: Żadnych. Aplikacja w Angularze pobiera dane z REST API i renderuje, wraz z routingiem. Wszystko działa bez problemu, chociaż musieliśmy się odrobinkę nagimnastykować jeśli chodzi o tytuły i opisy podstron. No a dla reszty crawlerów stoi postawiony PhantomJS który renderuje co trzeba.
@Marmite: Bez static html dla Google dobrze Ci się indeksuje? Bo jedna ze stron wisi 3 miesiące z nowym tekstem a Google ciągle stary wyświetla i nowego nie widzi... Podobnie nowych podstron zero w indeksie...
  • 0
@Marmite: dla reszty crawlerów? Czyli sprawdzacie user-agent i jeżeli jest to coś innego niż Googlebot to po stronie serwera request przechodzi przez PhantomJS i zwracany jest wygenerowany HTML?
@factorys: Tak jak mówiłem, mamy trochę rich data (czy raczej "structured data", jak to Google nazywa) oraz aktywnie korzystamy z Google Developers. Tam chyba ręcznie można kazać robotowi zaindeksować stronę, ja akurat tam nie siedziałem, moją rolą w tym temacie było uzupełnianie szablonów o structured data ;)
@5z7k9: Dokładnie tak. Google serwujemy normalną stronę, resztę (Facebook, Slack itp.) zwyczajnie przekierowujemy na PhantomJS
  • 0
@Marmite: no i jednak PhantomJS komplikuje całą sprawę bo jak rozumiem sam sobie wysyłasz requesta i później widzisz w logach dwa requesty po sobie z IP serwera i bota. Kolejna rzecz do implementacji...
@5z7k9: aby renderować reacta na serwerze nie musisz mieć backendu w node.js. robisz 2 apki - front i back endową, backend piszesz w czym tam chcesz jako api które zwraca jsony, front w reactie i odpalasz go na jakimś lekkim nodowym serwerze.
@ownadi: Co więcej, to rozwiązanie umożliwia backendowi serwowanie restem osobnych zasobów, a "backendowy frontend" w js-ie może sobie składać strony z wielu osobnych komponentów, obsługiwać cache, itd.