Hva er AXD-filformatet?
Filer med filendelsen .axd brukes av ASP.NET Web Forms-applikasjoner som kjører på Microsoft IIS. I motsetning til de fleste webfiltyper, er .axd ikke et dokument lagret på disk - det er et virtuelt URL-endepunkt mappet i web.config til en innebygd IHttpHandler-klasse som genererer svaret sitt fortløpende.
.axd-endepunkter lagrer ikke instruksjoner på klientmaskiner; i stedet strømmer behandleren innebygde assembly-ressurser - skript, bilder og andre ressurser - direkte fra kompilerte .dll-assemblies til den forespørrende nettleseren.
Som standard har .axd-ressursendepunkter navnet enten WebResource.axd eller ScriptResource.axd. Selv om de er svært like, har hver sin distinkte rolle: WebResource.axd håndterer generelle innebygde ressurser som bilder og binære filer, mens ScriptResource.axd vanligvis brukes med ASP.NET AJAX-rammeverket og tilbyr tilleggsfunksjoner som skriptkombinering og komprimering. Et tredje innebygd endepunkt, Trace.axd, viser sporingsdiagnostikk per forespørsel for feilsøking.
Behandlere registrert via .axd kan levere JavaScript-filer, CSS-stilark, bilder og HTML-sporingsutdata. .axd-endepunkter brukes også ofte på klientsiden for å hente bilde-, tekst- eller skriptfiler som er innebygd i assemblies på serversiden. Parameteren d= i spørrestrengen som brukes av WebResource.axd er HMAC-signert med applikasjonens machineKey, noe som beskytter endepunktet mot uautorisert ressursnummerering. .axd er en klassisk ASP.NET Web Forms-funksjon og brukes ikke i ASP.NET Core, som erstatter den med statiske webressurser og bundling-mellomvare.
Sikkerhet og trygghet
RISIKO: LOWEn .axd i seg selv er ikke en fil og er ikke farlig å «ha». To viktige punkter: (1) På serversiden kan det å la Trace.axd være aktivert i produksjon lekke forespørselsdata (hoder, sesjon, spørreverdier) til alle som navigerer til den - den bør deaktiveres i produksjons-web.config. (2) WebResource.axd har historisk vært knyttet til sikkerhetsadvarsler for ASP.NET (spesielt padding-oracle-sårbarheten fra 2010, MS10-070, som misbrukte det krypterte d=-tokenet) - hold .NET Framework oppdatert. For vanlige brukere er en lagret .axd-fil bare skript- eller bildetekst og er trygg å inspisere i et redigeringsprogram.
Formatdetaljer
i et nøtteskallProgrammer som åpner AXD-filer
Tekniske detaljer
dyp spesifikasjon| Format-type | Virtuelt HTTP-behandler-endepunkt på serversiden; ingen fil eksisterer på disk - `.axd`-URL-en løses ved kjøretid av en registrert IHttpHandler-klasse |
| Behandler-grensesnitt | Implementerer `System.Web.IHttpHandler` eller `IHttpAsyncHandler`; metoden `ProcessRequest(HttpContext)` skriver svaret direkte til HTTP-utdatastrømmen |
| Registrering av behandler | Deklarert i `<httpHandlers>` (IIS 6 / .NET 2.0) eller `<handlers>` (IIS 7+ integrert pipeline) i `web.config` |
| Utvikler / plattform | Microsoft; del av ASP.NET Web Forms på .NET Framework (introdusert 2002); finnes ikke i ASP.NET Core |
| Vanlige navn på endepunkter | `WebResource.axd` (generelle innebygde ressurser), `ScriptResource.axd` (ASP.NET AJAX-skript), `Trace.axd` (forespørselsdiagnostikk) |
| MIME-type | Varierer etter behandlerens svar - `application/javascript`, `text/css`, `image/png`, `text/html`, og andre; settes dynamisk per forespørsel |
| Ressurskilde | Innebygde ressurser kompilert inn i `.dll`-assemblies med build action `EmbeddedResource`; hentes via `Assembly.GetManifestResourceStream` ved forespørsel |
| Sikkerhetsmekanisme | `WebResource.axd` `d=`-parameteren er HMAC-signert med applikasjonens `machineKey`; ugyldige signaturer returnerer HTTP 400, noe som forhindrer ressursnummerering |
| Mellomlagringsatferd | Svar inneholder `Cache-Control: public` og et `Expires`-hode langt frem i tid; IIS output-caching lagrer gjentatte svar i minnet for ytelse |
| Komprimering | IIS kan bruke gzip- eller Brotli-komprimering på HTTP-nivå for `.axd`-svar under overføring; `ScriptResource.axd` støtter også skriptkombinering på serversiden |
| Klienttilgangsmetode | HTTP GET med en kryptert og HMAC-signert spørrestreng (f.eks. `?d=<token>&t=<timestamp>`); nettleseren mottar svaret som en vanlig ressurs |
| `Trace.axd`-utdata | Gjengir ASP.NET-sporingsdata per forespørsel som HTML - tidsbruk, HTTP-hoder, informasjonskapsler, skjemaverdier, servervariabler og kontrolltre |
| Erstattet av | ASP.NET Cores rørledning for statiske webressurser og bundling/minification-mellomvare; ingen `.axd`-behandlere eksisterer i ASP.NET Core |
| Utgitt | 2002 (ASP.NET 1.0, .NET Framework) |
| Siste versjon | ASP.NET Web Forms / Framework 4.8 (classic; not used in ASP.NET Core) |
| Spesifikasjon | learn.microsoft.com |
AXD-konverteringer
Spørsmål og svar fra fellesskapet
spurt av brukereIngen spørsmål ennå - vær den første til å spørre om AXD-filer.