Saya memiliki proyek seed AngularJS dan saya telah menambahkan
$locationProvider.html5Mode(true).hashPrefix('!');
ke file app.js. Saya ingin mengkonfigurasi IIS 7 untuk merutekan semua permintaan
http://localhost/app/index.html
sehingga ini bekerja untuk saya. Bagaimana saya melakukan ini?
Memperbarui:
Saya baru saja menemukan, mengunduh dan menginstal modul Penulisan Ulang URL IIS , berharap ini akan membuatnya mudah dan jelas untuk mencapai tujuan saya.
Pembaruan 2 :
Saya kira ini merangkum apa yang saya coba capai (diambil dari dokumentasi Pengembang AngularJS ):
Menggunakan mode ini memerlukan penulisan ulang URL di sisi server, pada dasarnya Anda harus menulis ulang semua tautan Anda ke titik masuk aplikasi Anda (mis. Index.html)
Pembaruan 3:
Saya masih mengerjakan ini dan saya menyadari bahwa saya TIDAK perlu mengarahkan ulang (memiliki aturan yang menulis ulang) URL tertentu seperti
http://localhost/app/lib/angular/angular.js
http://localhost/app/partials/partial1.html
jadi apa pun yang ada di direktori css, js, lib, atau parsial tidak dialihkan. Semua yang lain perlu diarahkan ke app / index.html
Adakah yang tahu cara mencapai ini dengan mudah tanpa harus menambahkan aturan untuk setiap file?
Pembaruan 4:
Saya memiliki 2 aturan masuk yang ditentukan dalam modul Penulisan Ulang URL IIS. Aturan pertama adalah:
Aturan kedua adalah:
Sekarang ketika saya menavigasi ke localhost / app / view1 memuat halaman, namun file pendukung (yang ada di direktori css, js, lib dan partials) juga sedang ditulis ulang ke halaman app / index.html - jadi semuanya akan datang kembali sebagai halaman index.html apa pun URL yang digunakan. Saya kira ini berarti aturan pertama saya, yang seharusnya mencegah URL ini diproses oleh aturan kedua, tidak berfungsi .. ada ide? ...siapa saja? ...Saya merasa begitu sendirian... :-(
app/index.html
dan tidak app/
secara eksplisit memicu halaman yang menyajikan AngularJS. saya kehilangan 2 jam hidup saya sebelum saya menemukan jawabannya. :-)