curl ne povas legi vian PAC-dosieron: transdonu la prokuron anstataŭe
PAC estas Ĝavaskripta politiko; curl volas finpunkton. Demandu, kiun prokuron la politiko elektas por via URL, transdonu ĝin kaj atentu pri NO_PROXY kaj TLS.
La adreso de la PAC-dosiero kaj la finpunkto de la prokuro aspektas interŝanĝeblaj en agorda dosiero, sed ili ne estas. Unu estas politika programo, kiun oni devas komputi por ĉiu URL; la alia estas gastiganto kaj pordo, kiuj akceptas konektojn. curl komprenas nur la duan. Transdoni PAC-adreson al --proxy estas kategoria eraro, kiu malsukcesas konfuze, kutime post longa CONNECT-tempoŝtuo al reteja servilo.
Kio estas ĉiu el ili fakte
| Vi havas | Kio ĝi estas | Kion curl faras kun ĝi |
|---|---|---|
http://wpad.corp.example/proxy.pac | Ĝavaskripto, kiu redonas prokuron aŭ rektan konekton por difinita URL | Elŝutas ĝin kiel dosieron kaj haltas tie |
http://proxy.corp.example:8080 | Aŭskultanto, kiu akceptas prokurajn petojn | Uzas ĝin, inkluzive de CONNECT por HTTPS-celoj |
La oftaj demandoj pri curl diras tion klare: curl ne provizas interpretadon de Ĝavaskripto nek de PAC. Ĉirkaŭaĵo ĉirkaŭ curl, kiu komprenas PAC, povas tion fari, sed curl mem ne, kaj neniu ŝaltilo igas ĝin retumilo.
Kial la retumilo funkcias kaj curl ne
Retumilo integriĝas kun la sistema prokura agordo, elŝutas la PAC-dosieron kaj rulas ĝiajn regulojn kontraŭ la URL, kiun vi malfermas. Tiu komputado estas la servo, kiun la PAC-dosiero provizas, kaj ĝi okazas ene de la retumilo, ne ene de via terminalo.
Elŝuti la PAC-dosieron per curl nur alportas ĝian tekston. Ĝi ne igas curl plenumi la politikon, kaj legi ĝin permane por trovi prokuron estas permana versio de la sama komputado, kun la sama ŝanco elekti la malĝustan branĉon. Se vi tamen legas ĝin, legu la return-deklaron, kiu kongruas kun via gastiganto, anstataŭ la unuan prokuran nomon en la dosiero. Plej multaj PAC-dosieroj enhavas plurajn, kaj nur unu branĉo validas por vi.
Por aprobita HTTP-prokuro kaj aprobita HTTPS-servo, ilustra peto estas:
curl --proxy http://proxy.corp.example:8080 https://service.example.net/status
La unua adreso estas la prokura aŭskultanto, la dua estas la servo, kiun vi volas. Ĉi tiuj estas ekzemplaj finpunktoj, ne testo, kiun iu faris, do anstataŭigu ilin per la skemo, pordo kaj aŭtentiga laborfluo de via organizo.
Elektu la prokuron por ĉi tiu celo
Demandu la administranton, kiun prokuron la politiko elektas por la URL, kiun vi bezonas, ne kiun prokuron la organizo posedas. PAC-reguloj povas redoni malsamajn rezultojn por internaj servoj, publikaj retejoj kaj malsukcesaj transiraj kondiĉoj, kaj regulo, kiu hodiaŭ kongruas kun via URL, post redakto povas kongrui kun alia.
Se la laborfluo bezonas pli ol unu konatan peton, uzu administranto-subtenatan senmovan agordon aŭ aprobitan PAC-komprenan integriĝon. Enkodigi unu kopiitan adreson perforte funkcias ĝis la tago, kiam la politiko ŝanĝiĝos kaj neniu plu memoros, kial tiu adreso estis elektita.
Poste rigardu, kion curl heredas. Prokuraj ĉirkaŭaĵvariabloj kaj NO_PROXY povas superregi aŭ ekskludi la prokuron, kiun vi transdonis, kaj ekskludo kongrua kun via celo sendas la peton rekte silente. Konservu la intencitan politikon anstataŭ forigi ĉiun ekskludon aŭ devigi ĉion tra unu adreso. Rulu la peton unufoje kun -v kaj kontrolu, al kiu adreso ĝi fakte konektiĝis.
Tenu la du TLS-identojn aparte
Ĉe HTTPS-prokuro estas du TLS-konektoj en ludo: via al la prokuro kaj tiu de la prokuro al la celo. Ĉiu havas sian propran identon por kontroli, kaj malŝalti la kontrolon por iu ajn el ili ne estas PAC-riparo, ĝi estas dua problemo aldonita al la unua.
Lasu la kontrolon ŝaltita kaj legu la malsukceson, kiun vi ricevas. Prokura aŭtentiga defio, neatingebla prokuro kaj rifuzo de la retejo estas tri malsamaj rezultoj, kaj nur la unua temas pri akreditaĵoj. La VPN ankoraŭ devas provizi permesitan vojon al privata prokuro, inkluzive de nomrezolucio por la prokura gastiganto mem, antaŭ ol iu ajn el ĉi tio sukcesos.
Notu la finpunkton, skemon, pordon, aŭtentigan metodon, ekskludojn kaj la VPN-vojon al la prokuro. Tiu registro faras la sekvan peton reproduktebla, kaj ĝi estas la diferenco inter koni vian prokuron kaj diveni pri ĝi.