Vad är filformatet CFM?
.cfm-filer lagrar CFML webbsidemallar, eller enskilda element i en större webbapplikation. En .cfm-sida genereras dynamiskt av servern när den begärs av en användares webbläsare - ColdFusion-motorn bearbetar filen på serversidan och returnerar vanlig HTML till klienten. Webbplatser och dynamiska applikationer byggda med ColdFusion kan direkt komma åt databasresurser och generera dynamiskt innehåll, hantera formulär, sessionsstatus och API-integrationer.
CFML-syntax finns i två former: CFScript, ett skriptspråk som liknar JavaScript, eller taggbaserad markup som liknar HTML, med anpassade taggar som börjar med <cf...> såsom <cfquery>, <cfoutput> och <cfloop>. ColdFusion utvecklas av Adobe (sedan 2005; ursprungligen skapat av Allaire Corporation 1995). Servern kompilerar .cfm-mallar till bytekod vid den första begäran och cachar resultatet; själva .cfm-filen förblir vanlig text och skickas aldrig till klientens webbläsare.
Adobe ColdFusion 2023 är den nuvarande versionen. Den öppna källkodsmotorn Lucee bearbetar också .cfm-filer och används ofta som ett gratis alternativ. .cfm-filer kan endast köras via en dedikerad CFML-motor - att öppna en i en webbläsare utan en körande server returnerar inget användbart. Tillhörande .cfc (ColdFusion Component)-filer innehåller återanvändbara klassliknande komponenter, medan .cfm-filer är sidmallarna som producerar utdata.
Säkerhet & trygghet
RISK: MEDIUMEn .cfm-källfil som du visar i en textredigerare är säker - det är vanlig text och kan inte köras på ditt skrivbord. Risken är kontextuell: om en .cfm-fil distribueras på en server EXEKVERAR den kod på serversidan som kan interagera med databaser, filsystem och externa tjänster. Skadlig .cfm-kod (webshells, bakdörrar) är ett verkligt säkerhetshot mot servrar i ColdFusion-miljöer - serveradministratörer bör se till att inga obehöriga .cfm-filer kan laddas upp (en vanlig attackvektor). För slutanvändare som bara har en .cfm-fil på sin lokala maskin: den kan inte göra någonting utan en körande CFML-server.
Formatdetaljer
i ett nötskal- ColdFusion Component File (.cfc förväxling) - .cfc är ett relaterat men distinkt filtillägg för ColdFusion Components (klassliknande återanvändbar kod); användare förväxlar ibland cfm och cfc.
Program som öppnar CFM-filer
Tekniska detaljer
djup specifikation| Filkodning | Vanlig text - UTF-8 (ColdFusion 2016+); äldre filer kan vara Windows-1252 eller ISO-8859-1 |
| Exekveringsmodell | Endast serversidan - bearbetas av ColdFusion/Lucee CFML-motor; .cfm-filen skickas aldrig till klientens webbläsare |
| Tagg-syntax | CFML-taggar använder prefixet <cf...> - t.ex. <cfquery>, <cfoutput>, <cfif>, <cfloop>, <cfinclude> |
| Skript-syntax | CFScript-block (<cfscript>...</cfscript>) erbjuder ett JavaScript-liknande alternativ till taggbaserad CFML |
| Databasåtkomst | Inbyggd <cfquery>-tagg kör parametriserad SQL mot konfigurerade datakällor; returnerar ett query-objekt |
| Runtime-kompilering | CFML-motorn kompilerar .cfm till bytekod vid första begäran och cachar resultatet; källfilen förblir vanlig text |
| Binär signatur | Ingen - vanlig text, inga magic bytes |
| MIME-typ | application/x-coldfusion (serversidan); klienten tar emot text/html |
| Motorer som stöds | Adobe ColdFusion 2023 (nuvarande), Lucee (öppen källkod, aktivt underhållen), OpenBD (mindre aktiv) |
| Ursprunglig utvecklare | Allaire Corporation (1995); förvärvades av Macromedia, sedan av Adobe 2005 |
| Tillhörande filtillägg | .cfc (ColdFusion Component)-filer innehåller återanvändbara klassliknande komponenter; .cfm-filer är sidmallarna som producerar utdata |
| Typisk filstorlek | 1 KB-500 KB (de flesta mallar 2-50 KB) |
| Stöd för MVC-ramverk | CFWheels, FW/1 (Framework One) och Coldbox är vanliga CFML MVC-ramverk som dirigerar till .cfm-filer |
| Släppt | 1995 (ColdFusion 1.0 by Allaire Corporation) |
| Senaste version | Adobe ColdFusion 2023 (version 2023.0; codename Project Fortuna) |
| Specifikation | helpx.adobe.com |
CFM-konverteringar
Frågor & svar
frågat av användareInga frågor än - bli den första att fråga om CFM-filer.