CssRewriteUrlTransform avec ou sans répertoire virtuel
Nous sommes en utilisant MVC Regroupement dans notre site, CssRewriteUrlTransform
permet de s'assurer que l'url de l'image de travail de l'ensemble dynamique fichier css.
Mais cela ne fonctionne que lorsque vous n'utilisez pas un répertoire virtuel, j'.e
http://localhost/VirttualDir
ne fonctionne pas, mais http://localhost/
n'. C'est parce que le CssRewriteUrlTransform
transformer ne prend pas le dossier virtuel en compte lors de la réécriture de l'url. Donc, si une image réelle chemin est localhost/vdir/content/img/foo.png
il va réécrire à localhost/content/img/foo.png
qui est faux
Vous devez vous connecter pour publier un commentaire.
Je ne suis pas sûr de bien comprendre vos problème, mais en voyant
http://localhost
ici semble erroné. Vous ne devez jamais utiliser une URL absolue pour vos faisceaux.Pour moi CssRewriteUrlTransform fonctionne parfaitement, voici comment je l'utilise:
"Bundles" est virtuel.
Cette aide?
Mise à jour
J'ai été confondu avec le "VirtualDir" chose, comme tu parles de IIS VirtualDir, et je pensais Bundle VirtualDir! C'est vrai que dans ce cas CssRewriteUrlTransform réécrire l'Url de l'Hôte, de ne pas l'Hôte/VirtualDir URI.
Pour ce faire, vous devez tirer CssRewriteUrlTransform pour lui faire faire ce dont vous avez besoin.
Il y a une bonne discussion ici: ASP.NET MVC4 Regroupement avec Twitter Bootstrap
Semble la meilleure réponse est là:http://aspnetoptimization.codeplex.com/workitem/83
L'utilisation de cette classe au lieu de CssRewriteUrlTransform
/path/to/my/appRoot/
.J'ai eu le même problème. C'est la façon dont je l'ai corrigé:
Je sais que c'est loin d'être parfait et il y a beaucoup de cas où cela peut aller mal (je ne suis pas sûr que vous pouvez analyser un fichier CSS avec une regex, en premier lieu - mais c'est exactement ce que l'original
CssRewriteUrlTransform
), mais jusqu'à présent, il détient...Le "CssRewriteUrlTransform' fonctionne très bien pour les applications qui NE veut PAS fonctionner sur un répertoire virtuel.
Donc, si votre application s'exécute sur http://your-site.com/ il fonctionne très bien, mais si s'exécute sur http://your-site.com/your-app/ vous aurez 404 pour toutes vos images, car la valeur par défaut "CssFixRewriteUrlTransform' est le référencement de vos images avec un '/'.
Utiliser ceci:
Remarque: supprimer tous les fichier css avec .min.css, parce que si ce n'est pas il n'est pas corrigé.
J'ai des problèmes avec l'url qui contient des "données" et même une url à l'intérieur un autre, donc je dois refaire les regex, c'est ma solution:
basé sur RegEx: Saisir les valeurs entre guillemets