Lorsque le regroupement / la minification est activé, certains de mes ensembles semblent avoir une URL non valide dans le navigateur (se terminant par un /), et IIS donne une erreur 403 interdite, comme si j'essayais de répertorier le contenu d'un dossier.
Il n'y a aucune différence dans la façon dont mes bundles sont configurés - ils ne sont pas .min.css, les autorisations d'accès sont correctes, etc.
.net
asp.net-mvc
razor
asp.net-mvc-4
bundling-and-minification
Kieren Johnstone
la source
la source
Réponses:
Mes bundles ont été enregistrés comme des chemins qui correspondaient à un dossier réel sur la solution, par exemple
~/Content/forum
.Cela fonctionne bien lorsque le regroupement est désactivé (le bundle est inclus correctement!), Mais pas lorsque le regroupement est activé.
La solution consiste à modifier le nom enregistré du bundle pour qu'il ne soit pas le même que tout ce qui existe dans le système de fichiers.
la source
~/Content/myfolder/bundle
si CSS est sousContent/myfolder
"Change the registered name of the bundle"
que voulez-vous dire par là? - J'ai pris le nom du bundle que nous attribuons. Comme (la partie en gras) ->bundles.Add(new StyleBundle(
"~ / Content / css").Include("~/Content/site.css"));
Dans mon cas, le bundle a été spécifié comme répertoire,
@Scripts.Render("~/scripts")
donc IIS ne savait pas comment servir le fichier js réel, j'ai changé le nom du bundle pour représenter un fichier javascript@Scripts.Render("~/scripts.js")
et cela l'a corrigé. La même chose était vraie pour mon ensemble de styles.la source
Le problème est la convention de dénomination de votre nom de bundle
Cela a résolu mon problème.
la source