Mae cyfeiriad y dirprwy yn dweud wrth Emacs ble i gysylltu. Mae ei fewngofnodi yn rhan arall o'r sgwrs. Ar gyfer cais HTTP cyffredin, gall llyfrgell URL Emacs ateb her dilysu'r dirprwy, cael manylion o auth-source neu ofyn yn rhyngweithiol, ac ailddefnyddio manylion a gedwir yn y sesiwn.

Mae'r manylion isod yn dilyn Emacs 31.1. Maent yn ymwneud â gweithrediadau sy'n defnyddio llyfrgell URL; mae gan lawrlwythydd allanol a lansiwyd gan becyn Emacs ei lwybr dilysu ei hun.

Gosodwch y llwybr, yna gadewch i HTTP ofyn am y mewngofnodi

Gellir dewis pwynt terfyn dirprwy sefydlog gyda'r opsiwn dogfennedig:

(setq url-proxy-services
      '(("http" . "proxy.example:8080")
        ("https" . "proxy.example:8080")))

Amnewidiwch y daliwr lle â'r pwynt terfyn a ddarperir. Mae'r allweddi yn disgrifio cynlluniau URL y gyrchfan. Mae ychwanegu'r cofnod HTTPS yn dewis llwybr ar gyfer cyrchfannau HTTPS; nid yw ynddo'i hun yn darparu manylion.

Yn ystod cais HTTP cyffredin, gall dirprwy ymateb â 407 Proxy Authentication Required a her Proxy-Authenticate. Mae llyfrgell URL yn dewis cynllun dilysu a gefnogir ac yn cael manylion ar gyfer pwynt terfyn y dirprwy. Yna mae'n ceisio eto â Proxy-Authorization.

Ar gyfer dilysu Basic, gall cais rhyngweithiol ofyn am enw defnyddiwr a chyfrinair pan nad yw manylion addas ar gael. Ni all cais a farciwyd fel anrhyngweithiol ddibynnu ar y negeseuon hynny. Mae mewngofnodi'r dirprwy hefyd ar wahân i fewngofnodi gwefan y gyrchfan: mae her 401 gwefan yn dilyn llwybr gwahanol.

Rhowch fanylion parhaol yn auth-source

Os yw auth-source eisoes yn darllen ffeil manylion amgryptiedig fel ~/.authinfo.gpg, mae gan gofnod Basic ar gyfer yr enghraifft hon y siâp canlynol:

machine proxy.example port http login YOUR_LOGIN password YOUR_PASSWORD

Defnyddiwch eich cyfrif a'ch cyfrinach go iawn, a gwnewch yn siŵr bod y ffeil ymhlith eich auth-sources cyfluniadwy. Mae'r llinell yn dangos meysydd sy'n cyfateb; nid yw'n gyfarwyddyd i roi cyfrinair yn eich ffeil gychwyn Lisp.

Mae dau fanylyn yn bwysig yng ngweithrediad Basic Emacs 31.1. Mae'n chwilio am enw gwesteiwr y dirprwy heb y porth TCP rhifiadol, ac mae'n trosglwyddo cynllun URL y dirprwy fel gwerth porth auth-source. Ar gyfer y dirprwy HTTP hwn, y gwerth hwnnw yw http, er bod y cysylltiad TCP yn defnyddio porth 8080.

Nid yw'r chwiliad hwn yn cynnwys realm yr her na phorth rhifiadol y dirprwy. Peidiwch â disgwyl iddo ddewis cyfrineiriau Basic gwahanol ar gyfer sawl realm neu borth dirprwy ar yr un enw gwesteiwr. Mae Digest yn defnyddio chwiliad gwesteiwr gwahanol, felly mae'r enghraifft uchod yn benodol ar gyfer Basic.

Mae llyfrgell URL hefyd yn cadw ei chache dilysu ei hun. Mae ei chofnodion Basic yn gwahaniaethu pwyntiau terfyn dirprwy ac yn defnyddio cyfatebiaeth realm neu gyfeiriadur o fewn pwynt terfyn; mae'r cache hwnnw ar wahân i chwiliad auth-source. Gall teipio cyfrinair wrth neges lenwi cache'r sesiwn heb gadw cofnod newydd yn eich ffeil manylion parhaol.

Mae gan HTTPS gam dilysu cynharach

Ar gyfer cyrchfan HTTPS trwy ddirprwy HTTP, mae Emacs yn anfon CONNECT yn gyntaf. Felly gall dilysu fod yn angenrheidiol cyn iddo gyrraedd y cysylltiad amgryptiedig â'r wefan.

Yn Emacs 31.1, mae adeiladydd cais CONNECT yn gwirio am ddilysu sydd eisoes ar gael trwy ei beirianwaith dilysu, gan gynnwys manylion Basic wedi'u cache. Nid yw ei lwybr Basic yn gofyn am na chael cofnod auth-source newydd ar y pwynt hwnnw. Nid yw ymateb CONNECT nad yw'n 200 ychwaith yn mynd i mewn i'r triniwr her HTTP 407 cyffredin a ddisgrifiwyd uchod.

O ganlyniad, nid yw cofnod auth-source a all ateb her HTTP Basic arferol yn gwarantu y bydd cais HTTPS cyntaf sesiwn newydd yn dilysu'n llwyddiannus. Mae gan sesiwn â manylion cache addas gyflwr cychwyn gwahanol. Ni all golygu'r un cofnod cyfrinair dro ar ôl tro ar ei ben ei hun ddileu'r gwahaniaeth hwn rhwng y ddau lwybr.

Os yw gweithrediad HTTPS yn stopio wrth y dirprwy, sefwch a gafodd CONNECT 407 ac a ydych yn defnyddio ymddygiad y rhyddhau hwn. Cadarnhewch y cynllun dilysu a gynigir gan y dirprwy hefyd. Nid yw cofnod manylion Basic yn addasydd cyffredinol ar gyfer pob system ddilysu fenter.

Cadwch y ffurfweddiad parhaol yn opsiwn cyhoeddus y dirprwy ac yn y cefndir manylion a ddewiswyd gennych. Mae storfa Basic fewnol llyfrgell URL yn ddefnyddiol i ddeall yr ymddygiad hwn, ond byddai llenwi'r strwythur data preifat hwnnw â llaw yn clymu'r gosodiad i fanylion gweithredu.

Erthyglau cysylltiedig