I went through some of this, so I can offer my perspective:
I rebuilt an e-commerce site that had previously been a mishmash of Wordpress and PHP nonsense with Elm. When I initially built the site, for some reason I was having trouble getting routing to work, so my application used #
anchors for routing - i.e., the “inventory” page was at https://mysite.com/#inventory
Google did not index the site, and we disappeared from the Internet. (This was an unpopular outcome, and made a lot of people very unhappy.)
The initiative to fix this encapsulated the following actions:
- I created and submitted a
sitemap.xml
, and made sure to refresh it when the contents of my site updated - I stopped using
#
anchors and figured out how to do regular routing - I changed all of our URL paths to be more descriptive - for instance,
https://mysite.com/inventory/18507
becamehttps://mysite.com/inventory/18507-allen-bradley-relay-model-2
- I built a “sitemap” into the website - I made sure that it was possible to access each inventory listing from a link on the main page by traversing through the different organizational units of the site (i.e., category → brand → make → model → inventory detail page) - from what I’ve read, Google really likes this, nearly as much as a sitemap
- I added a
robots.txt
and filled it out - I added RDFa tags to take advantage of Google Rich Results: https://search.google.com/test/rich-results
It took a few months, but over time Google gradually indexed more and more of our pages. I don’t use server-side rendering, or really anything at all very fancy - just a fairly static site hosted on nginx that loads my Elm JS from an index.html
page.
I don’t know how much of this applies to you, directly or otherwise, but in my case - it worked, gloriously, and led to a significant increase in business for our company.