Задать вопрос
volkov_p_v
@volkov_p_v
FrontEnd разработчик

Как настроить angular-route c html5?

Мне надо настроить в ангуляре роутинг с использованием html5, т.е. без # .
Настройки модуля angular-route сделал правильно, но при переходе по прямой ссылки необходимой страницы не открывается.
По всей видимости не правильные настройки на серверной стороне.
В проекте (в папке app) для апача есть файлик .htaccess , но настройки прописанный в нем работают как-то не корректно (их я взял из интернете).
В чем ошибка и как правильно написать?
Так же интересуют серверные настройки для IIS, node.js и nginx (особенно для node.js).
Заранее благодарен.
  • Вопрос задан
  • 424 просмотра
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
Реврайты у вас страшные каке-то. В целом смысл - проверяем, существует ли по урлу физический файл, если нет - редиректим на index.html.
Для апача выглядит так:
RewriteEngine on
# Don't rewrite files or directories
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
# Rewrite everything else to index.html to allow html5 state links
RewriteRule ^ index.html [L]

Вообще, для ui-router есть очень хорошая дока с настройками на разные случаи жизни. Отличий от стандартного роутера в данном случае никаких.
Ответ написан
madmages
@madmages
Человек прямоходящий
вариантов два. (при условии что сам ангуляр нормально сконфигурирован)
1. делать все ссылки редирект (http code 302) на сервере на одну корневую страницу и на ней уже будет сам ангуляр.
2. на реквест любой страницы отдавать одну и ту же (этот способ предпочтительней).
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы