WhiteNoise til statiske filer
Udrul statiske assets uden separat hosting
WhiteNoise til statiske filer er en gratis Django Academy-lektion på CoddyKit. Dette er lektion 3 af 4. Du kan læse alle 3 lektioner i dette læringsspor gratis i deres fulde længde — derefter låser CoddyKit PRO alle lektioner op samt praktiske øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Den er en del af læringsforløbet i Django Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Django Academy-kurset indeholder 4 lektioner i alt.
Problemet med statiske filer
I produktion leverer Django ikke din CSS og JS for dig. Normalt har du brug for Nginx eller et CDN, hvilket kræver ekstra opsætning. WhiteNoise gør det enklere. 📦
Hvad WhiteNoise gør
WhiteNoise lader din Django-applikation levere sine egne statiske filer effektivt, så en enkel udrulning, der kun bruger Gunicorn, også kan levere CSS og JS.
Fantastisk til enkle værter
På platforme som Heroku eller i små containere, hvor der ikke er en separat webserver til filer, holder WhiteNoise alt i én proces.
Installér WhiteNoise
Tilføj pakken med pip, og fastlås den derefter i requirements.txt, så dine udrulninger forbliver reproducerbare. WhiteNoise kræver ingen ekstra tjenester.
pip install whitenoiseTilføj middleware
Indsæt WhiteNoiseMiddleware lige efter SecurityMiddleware. Rækkefølgen er vigtig, fordi den opfanger statiske forespørgsler tidligt i kæden.
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'whitenoise.middleware.WhiteNoiseMiddleware',
]Indstil lagerbackend
Ret STATICFILES_STORAGE mod WhiteNoise for automatisk at aktivere komprimering og cachevenlige filnavne med hash.
STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage'Definér STATIC_ROOT
WhiteNoise leverer det, som collectstatic indsamler, så STATIC_ROOT skal pege på den mappe, hvor filerne placeres.
STATIC_ROOT = BASE_DIR / 'staticfiles'Kør collectstatic
Før levering skal du køre collectstatic for at kopiere alle appens aktiver til STATIC_ROOT. WhiteNoise læser fra denne ene mappe.
python manage.py collectstatic --noinputKomprimering følger med
Den komprimerede lagerbackend opbygger gzip- og brotli-versioner af dine filer på forhånd, så browsere downloader mindre og hurtigere aktiver.
Caching langt ud i fremtiden
WhiteNoise tilføjer en indholdshash til hvert filnavn og angiver lange cache-headere, så browsere sikkert kan genbruge filer, indtil de faktisk ændres.
WhiteNoise kontra Nginx
WhiteNoise vinder på enkelhed, men en dedikeret Nginx eller et CDN er hurtigere i meget stor skala. Vælg ud fra din trafik og hostingopsætning.
Hurtigt tjek
Hvor registrerer du WhiteNoise i dit projekt?
Opsummering
Du aktiverede WhiteNoise: installér det, tilføj middleware, indstil komprimeret lager, kør collectstatic, og så leverer din app selv cachelagrede statiske filer. 🎯
Lær Python med en AI-underviser — gratis
Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.
- Kurser
- 30
- Lektioner
- 120
Ofte stillede spørgsmål
Er lektionen “WhiteNoise til statiske filer” gratis?
Ja — alle 3 lektioner i læringssporet Django Academy, inklusive “WhiteNoise til statiske filer”, kan læses gratis i deres fulde længde her på webstedet. Derefter låser CoddyKit PRO alle lektioner op samt interaktive øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Django Academy-kurset indeholder 4 lektioner i alt.
Hvad lærer jeg i “WhiteNoise til statiske filer”?
Udrul statiske assets uden separat hosting Du øver dig i Django Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.
Skal jeg have erfaring for at begynde på Django Academy?
Der kræves ingen tidligere erfaring. Django Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 3 af 4.
Hvor lang tid tager lektionen “WhiteNoise til statiske filer”?
De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.
Kan jeg skrive og køre kode i denne Django Academy-lektion?
Ja. Alle Django Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.
Alle lektioner i dette kursus
- Gunicorn som WSGI-server
- Nginx som reverse proxy
- WhiteNoise til statiske filer
- Miljøvariabler og opdeling af indstillinger