Если вы хотите использовать реальный URL вместо хешбангов, то сначала заставьте сервер вернуть правильный контент для каждого URL-адреса.
т.е. если главная страница состоит из ничего, кроме ссылки и слова «Foo» и ссылка запускает JS, который изменяет URL в /bar
и заменяет слово «Foo» с «баром» затем если браузер запрашивает /bar
непосредственно вашему серверу нужно отправить страницу со словом «bar» (вместе со всем вашим JS-кодом).
Это означает, что вам нужно либо написать код дважды (на стороне сервера и на стороне клиента), либо вам нужно использовать изоморфный JavaScript (и запустить решение на стороне сервера JavaScript).
Это очень много работы, но это цена создания надежного одностраничного приложения. Возможно, вы захотите рассмотреть возможность использования SPA (путем проверки стоимости-выгоды).
Если вы не собираетесь, чтобы сервер так себя вел, и вы все еще нуждаетесь в SPA, тогда придерживайтесь использования URL-адресов hashbang.
После того как сервер делает правильно, вы просто должны сказать Угловая использовать History API вместо hashbangs.
$locationProvider.html5Mode(true)
Куда я могу поместить этот код? – jfoutch
Поместите его в директиву в Angular. Вы также можете использовать 'it();' для резервных копий браузера. Проверьте здесь несколько примеров: https://docs.angularjs.org/guide/$location – KingCodeFish