До сих пор я использовал prerender.io, чтобы сделать мои сайты angularjs seo friendly. Я работал хорошо, когда дело доходит до URL-адресов с hashbangs (website.com/#!).SEO для AngularJS с режимом url HTML5 в ExpressJS
В настоящее время я размещаю свои сайты на html5mode, который не содержит хэшинга на url и выглядит красивее. Однако даже после перехода на html5 url, prerender.io работает неправильно.
Кроме того, я придумал статью Google, в которой утверждается, что их новая технология позволяет механизму автоматически создавать веб-сайты Javascript (https://webmasters.googleblog.com/2015/10/deprecating-our-ajax-crawling-scheme.html). Однако, поскольку я использую инструмент «Получить как Google» в Google Search Console. Он очень плохо работает, а мой заголовок и мета-описание содержат синтаксис angularjs ({{seo.tile}} или {{seo.desc}}), которые не отображаются.
Я совершенно потерялся, где должен начать, и исправить проблемы, с которыми я столкнулся. Я попытался уйти от prerender.io, потому что я не думаю, что мы его уже обязательно нуждаемся.
Извините за плохо организованную должность и вопросы. Позвольте мне попытаться разобраться и связать вопросы ниже.
1) Неужели нам еще нужно научить бота Google об угловых?
2) Какова самая стабильная и лучшая практика для AngularJS + ExpressJS SEO? Я не хочу попробовать нестабильный и легко откалиброванный метод для этого.
Большое спасибо за ваше время.
Я использовал оба параметра $ locationProvider.hashPrefix ('!') и в то же время. Но я не думаю, что должен. Мое заключение заключается в том, что если я хочу перейти в режим html5, мне нужен метатег в файле index.html. Однако, если я уйду из режима html5 и просто использую hashbang, мне нужно включить $ locationProvider.hashPrefix ('!') В главный угловой модуль и не обязательно добавлять метатег в index.html. – supergentle
** Исправление: даже если вы помещаете тег pushstate ( supergentle