ASP.NET MVC framework 4.5 CSS bundle ne fonctionne pas sur l'hébergement
Je suis en cours d'exécution d'une Application sur l'app harbor écrit dans MVC4.
Un ensemble de fichiers css ne fonctionne pas. Dans mon local de l'ordinateur en mode debug, je vois le code de l'Application et je vois les fichiers. L'Application fonctionne comme prévu.
<link href="/Content/css/home/basic-jquery-slider.css" rel="stylesheet"/>
<link href="/Content/css/home/Home.css" rel="stylesheet"/>
Quand je télécharge l'application de Appharbor je vois le paquet dans le code, mais l'Application ne fonctionne pas.
<link href="/Content/css/home?v=zhVOIpUNuvCOZhJyBcQWpMlozayor4te6k-pM29wHqI1" rel="stylesheet"/>
Quand je navigue sur ce lien dans l' href
- je obtenir 403 - Interdit: Accès refusé.
Comment faire pour résoudre cela?
- Vous ne savez pas si vous avez résolu ce problème, mais cet article fixe la mienne. stackoverflow.com/a/18474844/955831
Vous devez vous connecter pour publier un commentaire.
Ma conjecture est que le chemin d'accès
Content/css
existe sur le disque dans votre application. Dans ce cas, IIS serait le traitement de la demande, pas de MVC.Assurez-vous que le chemin d'accès virtuel pour le bundle (le paramètre de la StyleBundle constructeur) ne correspond pas à un dossier dans le système de fichiers.
De commentaires:
Cette question est par défaut .NET ne fait pas de "processus" des demandes qui ont une .js ou .css.
Il y a deux correctifs pour ce (il vous suffit de faire UN)
A) Supprimer les extensions à partir du faisceau de noms. (recommandé), Cela va entraîner .NET pour traiter la demande et de l'exécuter à travers le BundleModule.
B) Ajouter à votre site web.config dans la système.serveur section qui va provoquer .NET à courir .js et .css demandes par le biais de la BundleModule.
Gros shout out à Ray Moro qui a découvert la cause réelle et il a partagé avec moi sur mon blog:
http://blog.cdeutsch.com/2012/11/fixing-404-errors-for-aspnet-mvc-apps.html
Qui s'est passé avec moi aussi, quand j'ai essayé le déploiement de mes ASP.NET MVC application sur AppHarbor.
J'ai eu une feuille de style bundle avec le nom
et la structure de dossiers a été
En changeant juste le nom du bundle à
"~/Content/bootstrap-css"
mon problème a obtenu resovled.Je sais que je suis en 4 ans de retard à cette question, mais cela a fonctionné pour moi.
Erreur 403 résolu. voici une explication détaillée et une solution pour l'erreur 403.
La solution est démontré pour les CSS bundle. Toutefois, il s'applique également à JavaScript.
http://www.mvccentral.net/Story/Details/articles/kahanu/stylebundle-403-error-solved
En un mot, assurez-vous que le chemin d'accès virtuel
[Script | Style]Bundle("~/content/[script | css]")
ne correspond pas à un dossier dans le système de fichiers (par exemple,C:\approot\Content\[script | css]
) au lieu[Script | Style]Bundle("~/content/[scriptDiff | cssDiff]")
J'ai résolu le problème en ajoutant dessous de la ligne de code à BundleConfig classe
Ce que je fais, c'est très simple,
- Je ajouter "js" à la fin de ScriptBundle comme suit: nouveau ScriptBundle("~/bundles/appjs")
Et j'ajoute "css" à la fin de StyleBundle comme suit: nouveau StyleBundle("~/content/appcss")
Mes noms de dossier ne jamais finir avec "js" ou "css".
Cela devrait le faire.
Cela s'applique à la "ScriptBundle de la classe de trop, s'assurer que le" nom du paramètre " pour le constructeur ne correspond pas à un chemin d'accès dans l'application web de système de fichiers. Rappelez-vous que les services internet (IIS) de chercher à servir le fichier/demande.
Le problème peut aussi venir du fichier crypté. Ce m'est apparu quand j'ai téléchargé le fichier d'amorce et utilisé les fichiers fournis. Ils ont montré en vert dans l'explorateur Windows et a bien fonctionné dans Visual Studio, mais lorsqu'il est déployé, j'ai une erreur 403.
Vous pouvez voir si elles sont cryptées en allant dans les propriétés, puis propriétés avancées et il y a un cryptées case.
Décocher et il ne sera plus un problème.
J'ai le même problème avec ça (403 Forbidden) erreur.
Dans mon cas, la raison en est serveur proxy dans mon organisation blocs de mon fichier css.
Css nom de fichier correspond à l'une des règles de blocage.
J'ai trouvé le fichier bootstrap.css n'était pas dans le dossier de contenu, j'ai donc cherché dans les paquets et collé là.. il a travaillé!