Ich stelle fest, dass es häufig einen aspnet_client-Ordner unter der Standardstruktur des IIS-Webordners gibt. Wofür wird das verwendet? Wird es gebraucht?
108
In .NET 1.1 Tagen und früher stellte dieser Ordner ASP.NET seine JavaScript-Unterstützung für die Validierungssteuerelemente und andere Funktionen zur Verfügung. Wenn auf einer .NET 1.1-Site oder älter keine ausgeführt wird, sollte das Löschen sicher sein. Ich würde es zuerst umbenennen, um sicherzustellen, dass es keine Probleme verursacht.
Zusätzlich zu dem, was andere gesagt haben, wird es normalerweise vom Tool aspnet_regiis erstellt, das von Windows Update / AddRemove Windows-Komponenten / IIS (erneut) ausgeführt werden kann. Selbst wenn Sie es löschen, kann es manchmal zufällig zurückkommen. Möglicherweise gibt es eine Möglichkeit, dieses Verhalten zu stoppen, aber ich habe es nicht gefunden (möglicherweise würde eine Änderung der Anwendungsversion in .NET 2 dies tatsächlich tun).
Wenn Sie also bestimmte Funktionen von .NET 1.0 / 1.1 (Validierung, Smart Navigation usw.) nicht verwenden, können Sie es problemlos löschen. Seien Sie nicht zu überrascht, wenn es zurückkommt!
quelle
aspnet_client ist ein Ordner für "Ressourcen, die über HTTP bereitgestellt werden müssen, aber auf Serverbasis und nicht auf Anwendungsbasis installiert werden".
Einige der Verwendungszwecke von aspnet_client umfassen das Speichern von Ressourcen (z. B. JavaScript, Bilder) für:
Es gibt / wird wahrscheinlich in Zukunft weitere (ab) Verwendungen dieses Ordners geben. Es ist unnötig zu erwähnen, dass es sowohl für Entwickler als auch für Systemadministratoren ein Albtraum bleibt, da es Dinge enthält, die "für die ordnungsgemäße Ausführung der Anwendung erforderlich sind", aber "nicht von der Anwendung bereitgestellt werden sollen".
Es scheint, dass sich der 'Prototyp' für den Inhalt des Ordners in C: \ inetpub \ wwwroot \ befindet, und es scheint vernünftig anzunehmen, dass IIS versuchen wird, das Richtige zu tun, wenn einer bestimmten IIS-Website eine / aspnet_client-Ressource fehlt und ... als letzten Ausweg ... einen physischen Ordner im Stammordner der Website erstellen und die Dateien dort kopieren. Es scheint, dass IIS dies zumindest tut, wenn "ASPNET_regiis / c" auf einem bestimmten Server aufgerufen wird - was wahrscheinlich an einigen kritischen Punkten automatisch auftritt ... beispielsweise wenn .NET Framework-Updates auf einen Server angewendet werden, der die IIS-Rolle hat.
Zu den Strategien für den Umgang mit dem Verzeichnis aspnet_client gehören: * Angabe eines virtuellen Verzeichnisses, das C: \ inetpub \ wwwroot zugeordnet ist, in der Hoffnung, dass IIS auf die Erstellung eines physischen Verzeichnisses verzichtet * das Löschen des physischen Verzeichnisses von Zeit zu Zeit, wenn Sie sicher sind, dass Ihre Site dies nicht tut. ' Ich brauche es nicht und es stört dich wirklich * aspnet_client zu ignorieren * "ASPNET_regiis / c" selbst auszuführen, wenn du den Ordner vermisst und es brauchst
Am wichtigsten ist wahrscheinlich, dass Sie als Entwickler die Abhängigkeiten Ihrer Anwendungen vom Verzeichnis aspnet_client klar verstehen und dokumentieren und sicherstellen, dass Ihre Installationsprozedur relevante Anweisungen enthält, um sicherzustellen, dass das Verzeichnis vorhanden ist. Mühe Allerdings sollten Sie wahrscheinlich nicht wirklich liefern das Verzeichnis als Teil Ihrer verpackten Web - Anwendung oder Website - wie könnte man dies möglicherweise tun für jede Version des .NET - Frameworks , die der Server die Lebensdauer Ihrer Anwendung sehen über wird ?!
Einige Links, auf die ich später zurückkommen werde:
quelle
Es enthält auch bestimmte Symbole und Skripte, die erforderlich sind, damit Crystal Reports-Berichte auch in Versionen nach 1.1 ordnungsgemäß ausgeführt werden können
quelle
C:\inetpub\wwwroot\aspnet_client\system_web\4_0_30319\crystalreportviewers13
mir nicht sicher, ob es das Richtige ist oder nicht, aber ich habe einfach den gesamten Ordner aspnet_client vom Stammverzeichnis in das Verzeichnis kopiert, in dem meine Ripplestone-Instanz lebte.Der Ordner dient normalerweise zum Speichern von clientseitigem Javascript, das ASP.NET beispielsweise für die Validierung verwendet.
Das Löschen sollte sicher sein.
quelle
Ich dachte, ich würde dies hier hinzufügen, da dies der Link ist, auf den ich immer wieder verwiesen wurde, als ich diese Frage googelte. Anscheinend wird dieser Ordner mit .NET 4.0 und neuer nicht mehr benötigt und kann ohne Probleme entfernt werden.
quelle
Wenn Sie Installshield zum Konfigurieren der ASP.net-Website verwenden, beachten Sie, dass diese Funktion in Installshield 2010 vorhanden war und in Installshield 2012 fehlt.
quelle