Ho il progetto seed AngularJS e l'ho aggiunto
$locationProvider.html5Mode(true).hashPrefix('!');
nel file app.js. Voglio configurare IIS 7 per indirizzare tutte le richieste a
http://localhost/app/index.html
in modo che questo funzioni per me. Come faccio a fare questo?
Aggiornare:
Ho appena scoperto, scaricato e installato il modulo di riscrittura URL IIS , sperando che ciò renda facile ed ovvio il raggiungimento del mio obiettivo.
Aggiornamento 2 :
Immagino che questo riassuma ciò che sto cercando di ottenere (tratto dalla documentazione per gli sviluppatori di AngularJS ):
L'uso di questa modalità richiede la riscrittura degli URL sul lato server, in pratica devi riscrivere tutti i tuoi collegamenti al punto di ingresso della tua applicazione (es. Index.html)
Aggiornamento 3:
Ci sto ancora lavorando e mi rendo conto che NON devo reindirizzare (avere regole che riscrivono) determinati URL come
http://localhost/app/lib/angular/angular.js
http://localhost/app/partials/partial1.html
quindi tutto ciò che è nelle directory css, js, lib o parziali non viene reindirizzato. Tutto il resto dovrà essere reindirizzato su app / index.html
Qualcuno sa come raggiungerlo facilmente senza dover aggiungere una regola per ogni singolo file?
Aggiornamento 4:
Ho 2 regole in entrata definite nel modulo IIS URL Rewrite. La prima regola è:
La seconda regola è:
Ora quando passo a localhost / app / view1 carica la pagina, tuttavia i file di supporto (quelli nelle directory css, js, lib e parziali) vengono anche riscritti nella pagina app / index.html - quindi tutto sta arrivando torna alla pagina index.html, indipendentemente dall'URL utilizzato. Immagino che questo significhi che la mia prima regola, che dovrebbe impedire a questi URL di essere elaborati dalla seconda regola, non funziona ... qualche idea? ... qualcuno? ...Mi sento così solo... :-(
app/index.html
e non app/
attivare esplicitamente la pagina che serve AngularJS. ho perso 2 ore della mia vita prima di capirlo. :-)