Comprender lo que se necesita para eliminar el hash # de las rutas angulares
Antes de eliminar el signo hash, tuve
mainApp.config(function ($locationProvider, $routeProvider) {
$routeProvider
.when('/page', {
controller: 'Page',
templateUrl: 'templates/page.html'
})
.when('/main', {
controller: 'Main',
templateUrl: 'templates/main.html'
})
.otherwise({ redirectTo: '/main'});
//$locationProvider.html5Mode(true);
});
y estos funcionaron bien
http://localhost:8080/index.html#/main
http://localhost:8080/index.html#/page
Después de eliminar el signo de libra, agregué a index.html
<base href="/">
<script src="/vendor/bootstrap-dist/js/bootstrap.min.js"></script>
<script src="/vendor/javascript/angular/angular.js"></script>
<script src="/vendor/javascript/angular/angular-route.js"></script>
<script src="/vendor/javascript/angular/ui-bootstrap-tpls-0.11.2.min.js"></script>
<script src="/javascript/index.js"></script>
<script src="/javascript/controllers/main.js"></script>
<script src="/javascript/controllers/page.js"></script>
y a index.js
$locationProvider.html5Mode(true);
ahora golpeandohttp://localhost:8080
redirige ahttp://localhost:8080/main
pero yendo ahttp://localhost:8080/main
directamente en el navegador devuelve 404 y las otras páginas también
¿Qué debo hacer para solucionar el problema?
mi backend es java