Meán-earraíLink to this heading

Míníonn an doiciméad seo gach comhpháirteanna middleware a thagann le Django. Le haghaidh faisnéise maidir le conas iad a úsáid agus conas do mheánearraí féin a scríobh, féach in:doc: `treoir úsáide middleware </topics/http/middleware> `.

Middleware atá ar fáilLink to this heading

Meán-earraí taisceLink to this heading

class UpdateCacheMiddlewareLink to this definition
class FetchFromCacheMiddlewareLink to this definition

Cumasaigh taisce ar fud an láithreáin. Má chumasaítear iad seo, déanfar gach leathanach faoi thiomáint Django a stóráil chomh fada agus a shainmhíníonn an socrú:setting: CACHE_MIDDLEWARE_SECONDS. Féach na:doc: cáipéisíocht taisceach </topics/cache>.

Meán-earraí “Coitianta”Link to this heading

class CommonMiddlewareLink to this definition
response_redirect_classLink to this definition

Réamhshocraithe chuig: aicme: ~django.http.httpResponsePermanentDirect. Fo-aicme CommonMiddleware agus athsháraigh an tréith chun na haatreoruithe arna eisiúint ag an middleware a shaincheapadh.

Cuireann sé cúpla áiseanna le haghaidh foirfeachtóirí:

  • Cuireann sé cosc ar rochtain ar ghníomhairí úsáideora sa socrú:setting: DISALLOWED_USER_AGENTS, ar chóir a bheith ina liosta de rudaí léirithe rialta tiomsaithe.

  • Déanann sé athscríobh URL bunaithe ar na socruithe:: APPEND_SLASH agus:setting: PREPEND_WWW.

    Más rud é: Setting: `True APPEND_SLASH agus ní chríochnaíonn an URL tosaigh le slash, agus ní fhaightear é sa URLConf, ansin cruthaítear URL nua trí slash a chur leis ag an deireadh. Má aimsítear an URL nua seo san URLConf, ansin atreoraíonn Django an t-iarratas chuig an URL nua seo. Seachas sin, déantar an URL tosaigh a phróiseáil mar is gnách.

    Mar shampla, atreorófar foo.com/bar chuig foo.com/bar/ mura bhfuil patrún URL bailí agat le haghaidh foo.com/bar ach tá patrún bailí aige do do foo.com/bar/`.

    Más rud é: Socrú: PREPEND_WWW` ``True, atreorófar URLanna nach bhfuil “www.” tosaigh orthu chuig an URL céanna le “www.” tosaigh.

    Tá an dá rogha seo i gceist URLanna a normalú. Is í an fhealsúnacht ná gur chóir go mbeadh gach URL ann in aon áit amháin, agus amháin amháin. Go teicniúil tá URL foo.com/bar difriúil ó foo.com/bar/ -- déileálfadh innéacsaitheoir inneall cuardaigh leo mar URLanna ar leithligh - mar sin is fearr cleachtas é URLanna a normalú.

    Más gá, féadfar tuairimí aonair a eisiamh ón iompar APPEND_SLASH ag baint úsáide as an maisitheoir: :func: ~django.views.decorators.common.no_append_slash:

    Code
    from django.views.decorators.common import no_append_slash
    
    
    @no_append_slash
    def sensitive_fbv(request, *args, **kwargs):
        """View to be excluded from APPEND_SLASH."""
        return HttpResponse()
    
  • Socraíonn sé an ceannteideal ``Content-Fad ``le haghaidh freagraí neamh-sruthú.

class BrokenLinkEmailsMiddlewareLink to this definition
  • Seolann sé ríomhphoist fógra nasc briste chuig: socrú: MANAGERS (féach: doc: /howto/earr-reporting).

Meán-earraí gZipLink to this heading

class GZipMiddlewareLink to this definition
max_random_bytesLink to this definition

Réamhshocraithe go 100. Fo-aicme GZipMiddleware agus athraigh an tréith chun an líon uasta na mbetaí randamacha atá san áireamh le freagraí comhbhrúite a athrú.

Comhbhrúiteann an `Django.middleware.gzip.gzipMiddleware ``ábhar do bhrabhsálaithe a thuigeann comhbhrú GZip (gach brabhsálaí nua-aimseartha).

Ba chóir an láithreán gréasáin seo a chur os comhair aon mheánearraí eile a chaithfidh an comhlacht freagartha a léamh nó a scríobh ionas go dtarlóidh comhbhrú ina dhiaidh sin.

NÍ chomhbhrúiteoidh sé ábhar má tá aon cheann díobh seo a leanas fíor:

  • Tá an corp ábhair níos lú ná 200 bytes ar fad.

  • Tá an ceannteideal Content-Encoding socraithe ag an bhfreagra cheana féin.

  • Níor sheol an iarratas (an brabhsálaí) ceannteideal Accept-Encoding ina bhfuil gzip`.

Má tá ceannteideal Etag sa fhreagra, déantar an ETag lag chun comhlíonadh le:rfc: 9110 #section -8.8.1.

You can apply GZip compression to individual views using the gzip_page() decorator.

Meán-earraí coinníollach GETLink to this heading

class ConditionalGetMiddlewareLink to this definition

Láimhseálann oibríochtaí coinníollach Mura bhfuil ceannteideal Etag ``sa fhreagra, cuireann an middleware ceann leis más gá. ceannteideal ``EtagLast-Modified sa fhreagra, agus má tá If-Non-MatchIf-Modhified-Since sa iarraidh, cuirtear an:class: ~django.http.httpResponseNotModified in ionad an fhreagra.

You can handle conditional GET operations with individual views using the conditional_page() decorator.

Middleware ÁitiúilLink to this heading

class LocaleMiddlewareLink to this definition
response_redirect_classLink to this definition

Réamhshocraithe chuig: aicme: ~django.http.httpResponsereDirect. Fo-aicme LocalEmiddleware agus athsháraigh an tréith chun na haatreoruithe arna eisiúint ag an middleware a shaincheapadh.

Cumasaíonn sé roghnú teanga bunaithe ar shonraí ón iarratas. Saincheapann sé ábhar do gach úsáideoir. Féach na:doc: `doiciméadú idirnáisiúnaithe</topics/i18n/translation> '.

Meán-earraí teachtaireachtaLink to this heading

class MessageMiddlewareLink to this definition

Cumasaíonn sé tacaíocht teachtaireachtaí bunaithe ar fhianán agus seisiún. Féach na:doc: `</ref/contrib/messages> doiciméadú teachtaireachtaí.

Meán-earraí slándálaLink to this heading

class SecurityMiddlewareLink to this definition

Soláthraíonn an django.middleware.security.securityMiddleware roinnt feabhsuithe slándála don timthriall iarrata/freagartha. Is féidir gach ceann a chumasú nó a dhíchumasú go neamhspleách le socrú.

Slándáil Iompair Dhian HTTPLink to this heading

Maidir le suíomhanna ar chóir rochtain a fháil orthu ach thar HTTPS, is féidir leat treoir a thabhairt do bhrabhsálaithe nua-aimseartha diúltú ceangal le d'ainm fearainn trí nasc neamhchinnte (ar feadh tréimhse áirithe ama) tríd an gceannteideal `"Strict-Transport-Security” a shocrú. Laghdaíonn sé seo do nochtadh do roinnt ionsaithe fear in-the-lár (MITM) a tharraingt SSL.

Socróidh SecurityMiddleware an ceannteideal seo duit ar gach freagra HTTPS má shocraíonn tú an socrú: SECURE_HSTS_SECONDS go luach sláimhir neamh-nialasach.

<SECURE_HSTS_SECONDS>Agus HSTS á chumasú agat, is smaoineamh maith é luach beag a úsáid ar dtús le haghaidh tástála, mar shampla, :setting: `SECURE_HSTS_SECONDS = 3600 `ar feadh uair an chloig. Gach uair a fheiceann brabhsálaí gréasáin ceanntásc HSTS ó do shuíomh, diúltóidh sé cumarsáid a dhéanamh neamh-shábháilte (ag baint úsáide as HTTP) le do fearainn ar feadh na tréimhse ama ar leith. Nuair a dheimhníonn tú go ndéantar na sócmhainní go léir a sheirbheáil go daingean ar do shuíomh (ie nár bhris HSTS aon rud), is smaoineamh maith é an luach seo a mhéadú ionas go gcosnófar cuairteoirí annamh (tá 31536000 soicind, ie 1 bhliain, coitianta).

Ina theannta sin, má shocraíonn tú an socrú:setting: SECURE_HSTS_INCLUDE_SUBDOMAINS go True`, cuirfidh SecurityMiddleware an treoir includeSubdomains` leis an gceannteideal ``Strict-Transport-Security ``. Moltar é seo (ag glacadh leis go ndéantar gach fofhearann a sheirbheáil go heisiach ag úsáid HTTPS), ar shlí eile d'fhéadfadh do shuíomh a bheith leochaileach fós trí nasc neamhchinnte le fo-fhearann.

Más mian leat do shuíomh a chur isteach chuig an liosta réamh-luchtaithe brabhsálaí, socraigh an socrú:setting: SECURE_HSTS_PRELOAD go True. Cuireann sé sin an treoir réamh-ualacha leis an gceannteideal ``Strict-Transport-Security ``.

Polasaí AtreoraitheLink to this heading

Úsáideann brabhsálaí `an ceannteideal Referer `__ mar bhealach chun faisnéis a sheoladh chuig suíomh faoin gcaoi a ndeachaigh úsáideoirí ann. Nuair a chliceálann úsáideoir ar nasc, seolfaidh an brabhsálaí URL iomlán an leathanaigh nasctha mar an atreoróir. Cé go bhféadfadh sé seo a bheith úsáideach chun críocha áirithe - cosúil le fáil amach cé atá ag nascadh le do shuíomh - is féidir leis imní príobháideachta a bheith ina chúis freisin trí shuíomh amháin a chur ar an eolas go raibh úsáideoir ag tabhairt cuairte ar shuíomh eile.

Tá sé de chumas ag roinnt brabhsálaithe glacadh le leideanna faoin gceannteideal HTTP Referer a sheoladh nuair a chliceálann úsáideoir ar nasc; cuirtear an leid seo ar fáil tríd `an ceannteideal Attreor-Polasaí `__. Is féidir leis an gceanntásc seo aon cheann de thrí iompraíocht a mholadh do bh

  • URL iomlán: seol an URL iomlán sa cheannteideal Referer. Mar shampla, má tá an t-úsáideoir ag tabhairt cuairte ar https://example.com/page.html, bheadh https://example.com/page.html sa cheannteideal Referer.

  • Bunús amháin: seol ach an “bunús” sa atreoróir. Is éard atá sa tionscnamh ná an scéim, an t-óstach agus (roghnach) uimhir an chalafoirt. Mar shampla, má tá an t-úsáideoir ag tabhairt cuairte ar https://example.com/page.html, bheadh an bunús ná https://example.com/.

  • Gan aon atreoróir: ná seol ceannteideal Referer ar chor ar bith.

Tá dhá chineál coinníollacha ann is féidir leis an gceanntásc seo a rá do bhrabhsálaí chun aire a thabhairt orthu:

  • An tionscnamh céanna i gcoinne trasbhunús: tá nasc ó https://example.com/1.html go https://example.com/2.html an tionscnamh céanna. Tá nasc ó https://example.com/page.html go https://not.example.com/page.html trasbhunús.

  • Íosghrádú prótacal: tarlaíonn íosghrádú má sheirbheáltar an leathanach ina bhfuil an nasc trí HTTPS, ach ní sheirbheálfar an leathanach atá nasctha leis trí HTTPS.

Is féidir le SecurityMiddleware` ceannteideal Referrer-Policy a shocrú duit, bunaithe ar an socrú:setting: SECURE_REFERRER_POLICY `(nóta litriú: seolann brabhsálaí ceannteideal ``Referer` nuair a chliceálann úsáideoir ar nasc, ach litrítear ``Referrer-Policy` sa cheannteideal a thugann brabhsálaí an cheart é sin a dhéanamh). Is iad na luachanna bailí don socrú seo ná:

`no-atreoraitheoir

Treoraíonn sé don bhrabhsálaí gan aon atreoróir a sheoladh le haghaidh naisc a chliceáltar ar an suíomh seo.

``níl aon atreorú-nuair a dhéantar íosghrádú ``

Treoraíonn sé don bhrabhsálaí URL iomlán a sheoladh mar an atreoróir, ach ach amháin nuair nach dtarlaíonn aon íosghrádú prótacal.

`bunaidh

Treoraíonn sé don bhrabhsálaí an bunús amháin a sheoladh, ní an URL iomlán, mar an atreoróir.

bunaidh-nuain-tras-bhunaithe

Treoraíonn sé don bhrabhsálaí an URL iomlán a sheoladh mar an atreoróir do naisc den bhunús céanna, agus gan ach an bunús do naisc trasbhunús.

same-origin Instructs the browser to send a full URL, but only for same-origin links. No referrer will be sent for cross-origin links.

strict-origin Instructs the browser to send only the origin, not the full URL, and to send no referrer when a protocol downgrade occurs.

tionscnamh docht - nuair a bhíonn tras-bhunaithe

Treoraíonn sé don bhrabhsálaí an URL iomlán a sheoladh nuair a bhíonn an nasc den bhunús céanna agus ní tharlaíonn aon íosghrádú prótacal; seol ach an bunús nuair a bhíonn an nasc trasbhunús agus ní tharlaíonn aon íosghrádú prótacal; agus níl aon atreoróir nuair a tharlaíonn íosghrádú prótacal.

URL neamhshábháilte

Treoraíonn sé don bhrabhsálaí an URL iomlán a sheoladh mar an atreoróir i gcónaí.

Polasaí Oscailte Tras-BhunúsLink to this heading

Tá sé de chumas ag roinnt brabhsálaithe fuinneoga barrleibhéil a leithlisiú ó dhoiciméid eile trí iad a chur i ngrúpa comhthéacs brabhsála ar leithligh bunaithe ar luach an cheanntásc Polasaí Oscailte Tras-Origin `__ (COOP). Má osclaíonn doiciméad atá ar leithligh ar an mbealach seo fuinneog aníos tras-bhunús, beidh “null` maoin windoww.opener` an popup. Is cosaint domhain cosanta é fuinneoga a leithlisiú ag úsáid COOP i gcoinne ionsaithe trasbhunús, go háirithe iad siúd cosúil le Spectre a cheadaigh easscagadh sonraí a luchtaithe i gcomhthéacs brabhsála

Is féidir le SecurityMiddleware an ceannteideal `Cross-Origin-Opener-Policy a shocrú duit, bunaithe ar an socrú:setting: SECURE_CROSS_ORIGIN_OPENER_POLICY. Is iad na luachanna bailí don socrú seo ná:

`an tionscnamh céann

Déanann sé an comhthéacs brabhsála a leithliú go heisiach go doiciméid Ní luchtaítear cáipéisí trasbhunús sa chomhthéacs brabhsála céanna. Is é seo an rogha réamhshocraithe agus is sábháilte.

`an bunaidh céann-ligead-popups

Déanann sé an comhthéacs brabhsála a leithlisiú chuig doiciméid den bhunús céanna nó iad siúd nach leagann COOP nó a roghnaíonn as aonrú trí COOP de “unsábháilte” a shocrú.

`neamhshábháilt-neamh

Ligeann sé an doiciméad a chur le grúpa comhthéacs brabhsála a oscailteora mura bhfuil COOP de same-originsame-origin-allow-popups ag an oscailteoir féin.

Roghanna Cineál-Ábhar X-: nosniffLink to this heading

Déanfaidh roinnt brabhsálaithe iarracht tuairim a dhéanamh ar chineálacha ábhair na sócmhainní a fhaigheann siad, ag dul i bhfeidhm ar an gceannteideal Content-Type. Cé gur féidir leis seo cabhrú le suíomhanna a thaispeáint le freastalaithe atá cumraithe míchuí, féadann sé riosca slándála

Má fhreastalaíonn do shuíomh comhaid uaslódáilte ón úsáideoir, d'fhéadfadh úsáideoir mailíseach comhad atá déanta go speisialta a uaslódáil a léirmhíníodh mar HTML nó JavaScript ag an mbrabhsálaí nuair a bhíothas ag súil go mbeadh

To prevent the browser from guessing the content type and force it to always use the type provided in the Content-Type header, you can pass the `X-Content-Type-Options: nosniff`__ header. SecurityMiddleware will do this for all responses if the SECURE_CONTENT_TYPE_NOSNIFF setting is True.

Tabhair faoi deara, i bhformhór na gcásanna imscartha nach bhfuil baint ag Django le freastal ar chomhaid uaslódáilte ón úsáideoir, ní chabhróidh an suíomh Mar shampla, má sheirbheálann do fhreastalaí gréasáin tosaigh (nginx, Apache, srl.) go díreach do: setting: MEDIA_URL ansin ba mhaith leat an ceannteideal seo a shocrú ann. Ar an láimh eile, má tá Django á úsáid agat chun rud éigin a dhéanamh mar údarú ag teastáil chun comhaid a íoslódáil agus ní féidir leat an ceanntásc a shocrú ag baint úsáide as do fhreastalaí gréasáin, beidh an socrú seo úsáideach.

Atreorú SSLLink to this heading

Má thairgeann do shuíomh naisc HTTP agus HTTPS araon, beidh nasc neamhshlánaithe ag mórchuid na n-úsáideoirí de réir réamhshocraithe. Ar mhaithe le slándáil is fearr, ba cheart duit gach nasc HTTP a atreorú chuig HTTPS.

Má shocraíonn tú an socrú:setting: SECURE_SSL_REDIRECT go True, atreoróidh SecurityMiddleware go buan (HTTP 301) gach nasc HTTP chuig HTTPS.

Má tá luach ag an socrú:setting: SECURE_SSL_HOST, seolfar gach athsheoladh chuig an óstach sin in ionad an óstach a iarrtar go bunaidh.

Má tá cúpla leathanach ar do shuíomh ar chóir go mbeadh ar fáil thar HTTP, agus gan iad a atreorú chuig HTTPS, is féidir leat nathanna rialta a liostáil chun na URLanna sin a mheaitseáil sa socrú:setting: SECURE_REDIRECT_EXEMPT.

Meán-earraí seisiúinLink to this heading

class SessionMiddlewareLink to this definition

Cumasaíonn tacaíocht seisiún. Féach na:doc: doiciméadú seisiúin </topics/http/sessions>.

Láithreán MiddlewareLink to this heading

class CurrentSiteMiddlewareLink to this definition

Cuireann sé an tréith láithre a léiríonn an suíomh reatha le gach réad ``HttpRequest ``atá ag teacht isteach. <site-middleware>Féach an doiciméadúcháin: `suíomhanna `.

Meán-earraí fíordheimhnitheLink to this heading

class AuthenticationMiddlewareLink to this definition

Cuireann sé an tréith úsáideoir ``, a léiríonn an t-úsáideoir logáilte isteach faoi láthair, le gach réad ``HttpRequest atá ag teacht isteach. <auth-web-requests>Féach:ref: `Fíordheimhniú in iarratais gréasáin `.

class LoginRequiredMiddlewareLink to this definition

Fo-aicmiú na meán-earraí agus athraigh na tréithe agus na modhanna seo a leanas chun iompar a shaincheapadh d'iarratais neamhfhíordheimhnithe.

redirect_field_nameLink to this definition

Réamhshocraithe go ``"eile” ``.

get_login_url()Link to this definition

Tugann sé an URL ar ais a atreorófar iarratais neamhfhíordheimhnithe chuig. <LOGIN_URL>Is é an toradh seo an login_url ``atá leagtha síos ar:func: `~django.contrib.auth.decorators.login_required` maisitheoir (mura bhfuil ``None), nó: setting: `Settings.login_url `.

get_redirect_field_name()Link to this definition

Tugann sé ainm an pharaiméadair fiosrúcháin ina bhfuil an URL ba chóir an t-úsáideoir a atreorú chuig tar éis logáil isteach rathúil. Is é an toradh seo an redirect_field_name atá leagtha síos ar:func: ~.django.contrib.auth.decorators.login_required maisitheoir (mura bhfuil None), nó:attr: redirect_field_name. Má chuirtear ``None ``ar ais, ní chuirfear paraiméadar fiosrúcháin leis.

Atreoraíonn gach iarratas neamhfhíordheimhnithe chuig leathanach logála isteach, ach amháin tuairimí a eisiamh la:func: ~.django.contrib.auth.decorators.login_not_required. <LOGIN_URL>Tá an leathanach logála isteach réamhshocraithe to:setting: `Settings.login_url `, ach is féidir é a shaincheapadh.

Cumasaigh an middleware seo tríd é a chur leis an socrú:setting: MIDDLEWARE iar-:class: ~django.contrib.auth.middleware.AuthenticationMiddleware:

Code
MIDDLEWARE = [
    "...",
    "django.contrib.auth.middleware.AuthenticationMiddleware",
    "django.contrib.auth.middleware.LoginRequiredMiddleware",
    "...",
]

Déan radharc poiblí, ag ceadú iarratais neamhfhíordheimhnithe, le:func: ~.django.contrib.auth.decorators.login_not_required. Mar shampla:

Code
from django.contrib.auth.decorators import login_not_required


@login_not_required
def contact_us(request): ...

Saincheap an URL logála isteach nó ainm réimse le haghaidh tuairimí fíordheimhnithe leis an maisitheoir: func: ~.django.contrib.auth.decorators.login_required chun login_url ``nó ``redirect_field_name a shocrú faoi seach. Mar shampla:

Code
from django.contrib.auth.decorators import login_required
from django.utils.decorators import method_decorator
from django.views.generic import View


@login_required(login_url="/books/login/", redirect_field_name="redirect_to")
def book_dashboard(request): ...


@method_decorator(
    login_required(login_url="/books/login/", redirect_field_name="redirect_to"),
    name="dispatch",
)
class BookMetrics(View):
    pass
class RemoteUserMiddlewareLink to this definition

Middleware for utilizing web server provided authentication. See Conas fíordheimhniú ag baint úsáide as REMOTE_USER for usage details, including security considerations.

class PersistentRemoteUserMiddlewareLink to this definition

Middleware for utilizing web server provided authentication when enabled only on the login page. See Ag baint úsáide as REMOTE_USER ar leathanaigh logála isteach amháin for usage details, including security considerations.

Meán-earraí cosanta CSRFLink to this heading

class CsrfViewMiddlewareLink to this definition

Cuireann sé cosaint i gcoinne Brionnaithe Iarratais Trasláithreáin trí réimsí foirme i bhfolach a chur le foirmeacha POST agus iarratais ar an luach ceart Féach na:doc: `Doiciméadú cosanta bréagán a iarraidh ar thrasláithreach' </ref/csrf>.

You can add Cross Site Request Forgery protection to individual views using the csrf_protect() decorator.

Meán-earraí Roghanna Fráma X-Link to this heading

class XFrameOptionsMiddlewareLink to this definition

Simple:doc: `cosaint clickjac</ref/clickjacking/> king tríd an gceannteideal X-Frame-Options'.

Content Security Policy middlewareLink to this heading

class ContentSecurityPolicyMiddlewareLink to this definition

Adds support for Content Security Policy (CSP), which helps mitigate risks such as Cross-Site Scripting (XSS) and data injection attacks by controlling the sources of content that can be loaded in the browser. See the Forbhreathnú documentation for details on configuring policies.

This middleware sets the following headers on the response depending on the available settings:

Ordú MiddlewareLink to this heading

Seo roinnt leideanna faoi ordú ranganna éagsúla middleware Django:

  1. SecurityMiddleware

    Ba chóir go dtéann sé gar do bharr an liosta má tá tú chun an t-atreorú SSL a chasadh air mar seachnaíonn sé sin rith trí dornán de mheán-earraí neamhriachtanacha eile.

  2. UpdateCacheMiddleware

    Roimh iad siúd a mhodhnóidh an ceannteideal Vary (SessionMiddleware`, GzipMiddleware`, LocalEmiddleware`).

  3. GZipMiddleware

    Roimh aon mheán-earraí a d'fhéadfadh an comhlacht freagartha a athrú nó a úsáid.

    Tar éis UpdateCacheMiddleware: Athraíonn sé ceannteideal `Vary.

  4. SessionMiddleware

    Roimh aon mheán-earraí a d'fhéadfadh eisceacht a ardú chun dearcadh earráide a spreagadh (mar shampla:exc: ~Django.Core.Exceptions.PermissionDenied) má tá tú ag baint úsáidea:setting: CSRF_USE_SESSIONS.

    Tar éis UpdateCacheMiddleware: Athraíonn sé ceannteideal `Vary.

  5. ConditionalGetMiddleware

    Roimh aon mheán-earraí a d'fhéadfadh an freagra a athrú (socraíonn sé an ceannteideal ``Etag ``).

    Tar éis GzipMiddleware mar sin ní ríomh sé ceannteideal Etag ar ábhar gzipped.

  6. LocaleMiddleware

    Ceann de na cinn is barr, tar éis SessionMiddleware (úsáideann sonraí seisiúin) agus UpdateCacheMiddleware (athraíonn sé ceannteideal Vary).

  7. CommonMiddleware

    Roimh aon mheán-earraí a d'fhéadfadh an freagra a athrú (socraíonn sé an ceannteideal Content-Length). Ní mór do mheán-earraí atá le feiceáil roimh CommonMiddleware agus a athraíonn an freagra Content-Length a athshocrú.

    In aice leis an mbarr: atreoraíonn sé nuair:setting: APPEND_SLASH nó:setting: PREPEND_WWW socraítear go True.

    Tar éis SessionMiddleware má tá tú ag baint úsáidea:setting: CSRF_USE_SESSIONS.

  8. CsrfViewMiddleware

    Roimh aon fheiceáil middleware a ghlacann leis gur déileáladh le hionsaithe CSRF.

    Roimhe Sean:Class: ~django.contrib.auth.middleware.remoteUserMiddleware, nó aon mheán-earraí fíordheimhnithe eile a d'fhéadfadh logáil isteach a dhéanamh, agus dá bhrí sin an comhartha CSRF a rothlú, sula nglaonn sé síos an slabhra middleware.

    Tar éis SessionMiddleware má tá tú ag baint úsáidea:setting: CSRF_USE_SESSIONS.

  9. AuthenticationMiddleware

    Tar éis SessionMiddleware: úsáideann sé stóráil seisiúin.

  10. LoginRequiredMiddleware

    Tar éis AuthenticationMiddleware: úsáideann réad úsáideora.

  11. MessageMiddleware

    Tar éis SessionMiddleware: is féidir le stóráil seisiúin-bhunaithe a úsáid.

  12. FetchFromCacheMiddleware

    Tar éis aon mheán-earraí a mhodhnóidh an ceannteideal Vary: úsáidtear an ceannteideal sin chun luach a roghnú don eochair hash-taisce.

  13. ContentSecurityPolicyMiddleware

    Can be placed near the bottom, but ensure any middleware that accesses csp_nonce is positioned after it, so the nonce is properly included in the response header.

  14. FlatpageFallbackMiddleware

    Ba chóir go mbeadh sé gar don bhun mar is cineál lár-earraí deireanach é.

  15. RedirectFallbackMiddleware

    Ba chóir go mbeadh sé gar don bhun mar is cineál lár-earraí deireanach é.