Bundel gaya MVC4 memberikan 403


99

Ketika bundling / minification diaktifkan, beberapa bundel saya tampaknya memiliki URL yang tidak valid di browser (diakhiri dengan a /), dan IIS memberikan kesalahan terlarang 403, seolah-olah mencoba untuk membuat daftar isi folder.

Tidak ada perbedaan dalam cara bundel saya diatur - mereka bukan .min.css, izin akses sudah benar, dll.



Jawaban:


233

Bundel saya terdaftar sebagai jalur yang sesuai dengan folder aktual pada solusi, misalnya ~/Content/forum.

Ini berfungsi dengan baik saat bundling dimatikan (bundel disertakan dengan benar!), Tapi tidak saat bundling diaktifkan.

Solusinya adalah mengubah nama bundel yang terdaftar menjadi tidak sama dengan apa pun yang ada di sistem file.


20
Perhatikan juga jika file CSS merujuk ke citra atau file lain yang berhubungan dengan CSS, pastikan nama file bundel adalah sesuatu di bawah folder yang berisi CSS sebenarnya. Misalnya, ~/Content/myfolder/bundlejika CSS di bawahContent/myfolder
Kieren Johnstone

1
Saya memiliki dua bundel: ~ / Content / kendo (untuk css) dan ~ / bundles / kendo (untuk skrip). Jadi: kesalahan 403. Ketika saya mengubah nama salah satunya - masalah hilang. Terima kasih.
VikciaR

1
@KierenJohnstone minta maaf karena tidak spesifik, "Change the registered name of the bundle"apa maksud Anda dengan itu? - Saya mengasumsikan nama bundel yang KAMI tetapkan. Sukai (bagian yang dicetak tebal) -> bundles.Add(new StyleBundle( "~ / Content / css" ).Include("~/Content/site.css"));
Don Thomas Boyle

1
Tepat. Tampaknya ini adalah bug dalam paket nuget FontAwesome.
wolfyuk

1
Juga dalam paket nuget select2.
Tetsujin no Oni

3

Dalam kasus saya, bundel ditentukan sebagai direktori @Scripts.Render("~/scripts")sehingga IIS tidak tahu bagaimana menyajikan file js yang sebenarnya, saya mengubah nama bundel untuk mewakili file javascript @Scripts.Render("~/scripts.js")dan memperbaikinya. Hal yang sama berlaku untuk paket gaya saya.


3

Masalahnya adalah konvensi penamaan nama paket Anda seharusnya

("bundles/css") 

Ini memecahkan masalah saya.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.