Keine Stile / Bilder in asp.Net MVC 2-Anwendung

8

Grüße

Ich habe ein kleines Problem mit meiner ASP MVC-Anwendung. Auf meinem lokalen Entwicklungsserver funktioniert alles einwandfrei, aber wenn ich versuche, die Anwendung auf einem IIS 7.0 Server zu veröffentlichen, werden nur einfache Seiten ohne Stile / Markierungen / Bilder angezeigt.

Ich lege all diese Dinge in den Ordner / Content /, aber wenn ich versuche auf diesen Ordner auf dem Produktionsserver zuzugreifen, erhalte ich einfach einen Fehler 404 nicht gefunden.

Ich habe den IIS-Server mit .Net 4.0 eingerichtet und bin dem Bereitstellungsleitfaden hier gefolgt: Ссылка

Alle Ansichten / Controller / Klassen scheinen gut zu funktionieren, das Einzige, was nicht der Inhaltsunterordner ist und ich kann nicht sehen warum.

Hat jemand einen Vorschlag, was ich hätte übersehen können oder kennt jemand dieses Problem?

    
xenolf 21.04.2010, 18:28
quelle

6 Antworten

10

Ich hatte das gleiche Problem, aber ich fand den Grund, warum es die Authentifizierung im Ordner "Content" erzwang.

Wenn ein Benutzer noch nicht angemeldet ist, wird er als anonyme Authentifizierung klassifiziert. In IIS7 (das ist, was ich benutze, es ist das gleiche in IIS6) müssen Sie das Authentifizierungsfenster in der Ansicht Features öffnen. Bearbeiten Sie dann die anonyme Authentifizierung. Um die Identität Ihres Anwendungspools zu verwenden, müssen Sie lediglich sicherstellen, dass der Benutzer über Berechtigungen zum Lesen in diesem Ordner verfügt.

Das hat es für mich repariert, hoffe es funktioniert für dich.

    
Connor Ross 12.10.2010 14:27
quelle
3

Nun, ich habe das IIS_IUSR s zum Projektverzeichnis hinzugefügt und das gleiche Problem gefunden:
CSS wird nicht geladen und nichts aus dem Inhaltsordner.
Aber es löste das Unable to start debugging on the web server Problem.
Dann habe ich den IUSR zum selben Ordner hinzugefügt und das Problem behoben. Jetzt kann ich Bilder, CSS-Stile und all das Zeug sehen.

    
quelle
2

Dies liegt daran, dass Sie wahrscheinlich einen festen Pfad für den Quellcode verwenden, wie zum Beispiel: ../../Content/Styles/style.css . In MVC sollten Sie den URL-Helper verwenden: Url.Content("~/Content/Styles/style.css") .

Unter Verwendung des Url-Helfers sollten Sie keine Probleme haben.

    
Rodrigo Waltenberg 15.09.2010 22:07
quelle
1

Habe mir die ganze Nacht die Haare ausgezogen.

Auf W2K8, MVC2, .NET 4.0 und IIS 7 (mit VS 2010)

Stellen Sie sicher, dass IIS_IUSRS volle Rechte für den Stammordner hatte, aber immer noch nicht go - css, js, Bilder, auf die beim Rendern der Seite immer noch nicht zugegriffen wurde ....

und dann .... so einfach:

In der Features-Ansicht für die Site definierte MIME-Typen für .js, .css und .jpg - und voila!

Süß!

ps. meine 1. mvc app - und ich glaube ich mag es ...

    
Rene Pilon 03.11.2010 02:25
quelle
0

Überprüfen Sie die Eigenschaften Ihrer Inhaltsordner ... sehen Sie, ob sie aus irgendeinem Grund nicht lokal kopieren.

    
Webjedi 22.04.2010 01:17
quelle
0

Der Ordner, auf den Ihr virtuelles Verzeichnis verweist, hat dem Benutzer "Alle" Leseeigenschaften gegeben.

    
Julen 16.02.2012 13:31
quelle

Tags und Links