Ask HN: Web app architecture

  • Using #! (hashbangs) in not advisable as you will be presenting different pages to the users and the web crawler for the same URL. If you can make sure that you present the same content to the users and the crawler then you should be fine.

    Anyways, the preferred method for such single page seo friendly URLS is to have hashbang in them. E.g. domainname/#!/category/value. When the search engine crawls to this page it will crawl to domainname/?_escaped_fragment_=/category/value. So for the crawler you will have to write search engine friendly page with all the info that you want it to index. But also make sure that the same info is presented to the users. The UI could be different in both the cases but the content should be same. When the search engine indexes these pages, it will present the url in #! formats in the search results. For more details check out the link that mileschet has provided.

  • Hi, i´ve been doing some research on it too, i strongly recommend you to visit https://developers.google.com/webmasters/ajax-crawling/docs/... it gives me some direction.

  • use window.pushstate instead of urls with hashes,

    you can change URL in window address without reloading entier page

    Google will index "hashbangs", but they will rank poorly and you will get only small amount of traffic from search