Che cos'è il formato di file AXD?
I file con l'estensione .axd sono utilizzati dalle applicazioni ASP.NET Web Forms in esecuzione su Microsoft IIS. A differenza della maggior parte dei tipi di file web, .axd non è un documento memorizzato su disco: è un endpoint URL virtuale mappato nel web.config a una classe IHttpHandler integrata che genera la sua risposta al volo.
Gli endpoint .axd non memorizzano istruzioni sulle macchine client; invece, il gestore trasmette le risorse assembly incorporate - script, immagini e altri asset - direttamente dagli assembly .dll compilati al browser richiedente.
Per impostazione predefinita, gli endpoint delle risorse .axd sono denominati WebResource.axd o ScriptResource.axd. Sebbene molto simili, ognuno svolge un ruolo distinto: WebResource.axd gestisce risorse incorporate generali come immagini e asset binari, mentre ScriptResource.axd è tipicamente utilizzato con il framework ASP.NET AJAX e offre funzionalità aggiuntive come la combinazione e la compressione degli script. Un terzo endpoint integrato, Trace.axd, visualizza la diagnostica di tracciamento per singola richiesta per il debug.
I gestori registrati tramite .axd possono servire file JavaScript, fogli di stile CSS, immagini e output di traccia HTML. Gli endpoint .axd sono anche comunemente usati lato client per recuperare file di immagine, testo o script incorporati negli assembly lato server. Il parametro della stringa di query d= utilizzato da WebResource.axd è firmato con HMAC tramite la machineKey dell'applicazione, proteggendo l'endpoint dall'enumerazione non autorizzata delle risorse. .axd è una funzionalità classica di ASP.NET Web Forms e non è utilizzata in ASP.NET Core, che la sostituisce con asset web statici e middleware di bundling.
Sicurezza e incolumità
RISCHIO: LOWUn .axd di per sé non è un file e non è pericoloso da «avere». Due punti reali: (1) Lato server, lasciare Trace.axd abilitato in produzione può far trapelare dati delle richieste (intestazioni, sessione, valori di query) a chiunque vi acceda - dovrebbe essere disabilitato nel web.config di produzione. (2) WebResource.axd è stato storicamente legato ad avvisi di sicurezza ASP.NET (in particolare la vulnerabilità padding-oracle del 2010, MS10-070, che abusava del token d= crittografato) - mantieni il .NET Framework aggiornato. Per gli utenti comuni, un file .axd salvato è solo testo di script/immagine ed è sicuro da ispezionare in un editor.
Dettagli del formato
in sintesiProgrammi che aprono file AXD
Dettagli tecnici
specifiche approfondite| Tipo di formato | Endpoint del gestore HTTP virtuale lato server; non esiste alcun file su disco - l'URL `.axd` viene risolto in fase di esecuzione da una classe IHttpHandler registrata |
| Interfaccia del gestore | Implementa `System.Web.IHttpHandler` o `IHttpAsyncHandler`; il metodo `ProcessRequest(HttpContext)` scrive la risposta direttamente nel flusso di output HTTP |
| Registrazione del gestore | Dichiarato in `<httpHandlers>` (IIS 6 / .NET 2.0) o `<handlers>` (pipeline integrata di IIS 7+) nel `web.config` |
| Sviluppatore / piattaforma | Microsoft; parte di ASP.NET Web Forms sul .NET Framework (introdotto nel 2002); assente in ASP.NET Core |
| Nomi comuni degli endpoint | `WebResource.axd` (risorse incorporate generali), `ScriptResource.axd` (script ASP.NET AJAX), `Trace.axd` (diagnostica delle richieste) |
| Tipo MIME | Varia in base alla risposta del gestore - `application/javascript`, `text/css`, `image/png`, `text/html` e altri; impostato dinamicamente per richiesta |
| Sorgente della risorsa | Risorse incorporate compilate negli assembly `.dll` con azione di compilazione `EmbeddedResource`; recuperate tramite `Assembly.GetManifestResourceStream` al momento della richiesta |
| Meccanismo di sicurezza | Il parametro di query `d=` di `WebResource.axd` è firmato con HMAC utilizzando la `machineKey` dell'applicazione; le firme non valide restituiscono HTTP 400, impedendo l'enumerazione delle risorse |
| Comportamento della cache | Le risposte portano `Cache-Control: public` e un'intestazione `Expires` con scadenza lontana nel futuro; il caching dell'output di IIS memorizza le risposte ripetute in memoria per le prestazioni |
| Compressione | IIS può applicare la compressione gzip o Brotli a livello HTTP alle risposte `.axd` in transito; `ScriptResource.axd` supporta anche la combinazione di script lato server |
| Metodo di accesso client | HTTP GET con una stringa di query crittografata e firmata con HMAC (es. `?d=<token>&t=<timestamp>`); il browser riceve la risposta come una normale risorsa |
| Output di `Trace.axd` | Esegue il rendering dei dati di traccia ASP.NET per richiesta come HTML - riepilogo tempi, intestazioni HTTP, cookie, valori dei moduli, variabili del server e albero dei controlli |
| Sostituito da | La pipeline degli asset web statici di ASP.NET Core e il middleware di bundling/minificazione; non esistono gestori `.axd` in ASP.NET Core |
| Rilasciato | 2002 (ASP.NET 1.0, .NET Framework) |
| Ultima versione | ASP.NET Web Forms / Framework 4.8 (classic; not used in ASP.NET Core) |
| Specifica | learn.microsoft.com |
Conversioni AXD
Domande e risposte della community
chiesto dagli utentiAncora nessuna domanda - sii il primo a chiedere informazioni sui file AXD.