Vad är filformatet CONFIG?
.config-filer används vanligtvis inom ett system som konfigurationsfiler. Med hjälp av konfigurationsfiler definieras olika alternativ, parametrar och inställningar inom specifika applikationer eller hela systemet. I de flesta .config-filer lagras alla egenskaper som ren text - oftast som XML, vilket är det format Microsoft .NET använder för App.config (skrivbordsapplikationer) och Web.config (ASP.NET-webbprojekt). Vissa program använder istället ett INI-liknande key=value-format eller YAML.
Datorprogramvara och operativsystem förlitar sig ofta på många inställningar och parametrar som är nödvändiga för att styra pågående processer. .config-filer tjänar detta syfte - de anger bland annat filsökvägar, anslutningssträngar och växlar för applikationsbeteende. I vissa program kan mer än en sådan fil användas, men detta ses vanligtvis i mer komplexa applikationer.
- Eftersom dessa är textbaserade filer kan de redigeras med vilken textredigerare som helst, inklusive Notepad i Windows. Innan du redigerar bör du bekanta dig med filens innehåll, eftersom felaktiga ändringar kan påverka funktionen hos program eller operativsystemet negativt.
.config-filer definierar hur ett program initieras eller fungerar vid körning - de flesta applikationer läser dem under uppstart. I .NET kopieras och döps ett projektsApp.configom till<AssemblyName>.exe.configi utdatamappen.- .NET-körningsmiljön läser också en systemövergripande
machine.configoch sammanfogar dess inställningar med applikationskonfigurationen; inställningar på applikationsnivå har företräde framför systemstandarder. Relaterade format inkluderar .cfg-filer som används av många applikationer utanför .NET.
Säkerhet & trygghet
RISK: MEDIUMEn .config-fil i textformat är säker att öppna och läsa. Risken ligger i REDIGERING: eftersom en .config ofta styr om dess program startar (och för .NET, hur det ansluter till databaser), kan ett felaktigt värde, skrivfel eller en trasig XML-tagg hindra applikationen från att fungera. Kopiera alltid originalet till en säkerhetskopia innan du ändrar något, redigera med en text- eller kodredigerare (aldrig ett ordbehandlingsprogram) och ändra en sak i taget. Notera även att .config-filer kan innehålla känsliga data (databasanslutningssträngar, lösenord, API-nycklar i Web.config) - hantera dem konfidentiellt och var försiktig med nedladdade «optimerade» konfigurationsfiler från okända källor.
Formatdetaljer
i ett nötskalProgram som öppnar CONFIG-filer
Tekniska detaljer
djup specifikation| Primärt format | XML - ett `<configuration>`-rotelement som omsluter sektionerna `<appSettings>`, `<connectionStrings>` och `<system.*>` i standardlayouten för .NET |
| Filkodning | UTF-8 (standard för .NET XML-konfigurationsfiler; kodning deklareras i XML-prologen) |
| MIME-typ | `text/xml` |
| Filsignatur | Ingen universell; .NET XML-varianten börjar med `<?xml ...?>` vid offset 0; INI-liknande key=value-varianter har inga magic bytes |
| Rotelement (.NET) | `<configuration>` - obligatoriskt yttersta element; underordnade element som `<appSettings>` och `<connectionStrings>` följer ett schema som upprätthålls av körningsmiljön |
| Mekanism för körningsläsning | Läses vid applikationsstart av .NET `ConfigurationManager` (eller `IConfiguration` i .NET Core / .NET 5+); ändringar kräver omstart av appen om inte en konfigurationsomladdning är explicit konfigurerad |
| Standardinställningar på systemnivå | `machine.config` i installationsmappen för .NET Framework tillhandahåller systemövergripande standardinställningar; applikationens `.config`-inställningar åsidosätter alltid systemstandarder |
| Transformering vid bygge | XML Document Transform (`.xdt`)-filer som `App.Debug.config` och `App.Release.config` sammanfogas av MSBuild för att skapa miljöspecifika utdatafiler |
| Distribuerat filnamn | För .NET-skrivbordsappar döps utdata om till `<AssemblyName>.exe.config`; för ASP.NET förblir filnamnet `Web.config` i webbroten |
| Sektion för anslutningssträngar | `<connectionStrings>` underordnat element lagrar namngivna databasanslutningssträngar; attributet `providerName` anger ADO.NET-provider (t.ex. `System.Data.SqlClient`) |
| Alternativa textformat | Vissa applikationer använder `.config` för INI-liknande `key=value`-text, YAML eller TOML istället för XML - det interna formatet är helt applikationsdefinierat |
| Säkerhetshantering | IIS blockerar direkt HTTP-åtkomst till `.config`-filer som standard; känsliga värden som lösenord kan krypteras på plats med `aspnet_regiis -pe` i Windows |
| Radbrytningar | Vanligtvis CRLF i Windows, LF i Linux/macOS; XML-parsern normaliserar båda |
| Relaterade filändelser | `.cfg`, `.ini`, `.conf`, `.xml`, `.json`, `.yaml` |
| Släppt | No single origin; .NET App.config/Web.config since .NET Framework 1.0 (2002) |
| Specifikation | learn.microsoft.com |
CONFIG-konverteringar
Frågor & svar
frågat av användareInga frågor än - bli den första att fråga om CONFIG-filer.