Shell ọmọ ko le ṣe àtẹ̀jáde proxy pada sinu Perl
Ṣètò ENV Perl tààrà kí o sì fi local dín àwọn àyípadà proxy mọ̀ ní ayika ìpè ọmọ kan kí àwọn iye àkọ́kọ́ lè pada wá lẹ́yìn.
Àṣẹ backtick tí ó ní export ń yí shell tí a ṣe fún àṣẹ yẹn nìkan padà. Nígbà tí shell bá jáde, ìlànà Perl òbí ṣì ní àyíká rẹ̀ tẹ́lẹ̀.
Dípò bẹ́ẹ̀, ṣètò hash àyíká Perl. local lè pa àyípadà mọ́ nínú blọ́ọ̀kù kan:
{
local $ENV{http_proxy} = 'http://proxy.example:8080';
local $ENV{https_proxy} = 'http://proxy.example:8080';
my $status = system {
'/usr/bin/curl'
} '/usr/bin/curl', '--fail', '--max-time', '30',
'https://downloads.example/data.csv';
die "Downloader failed: $status" if $status != 0;
}
Ọmọ náà jogún àwọn iye tí a fi local ṣe. Fún gbígbà HTTP gbangba, ibi ìparí kan láti àkójọ proxy HTTP lè pèsè àwọn iye URL wọ̀nyẹn. Nígbà tí blọ́ọ̀kù bá parí, Perl ń mú àwọn àkọsílẹ̀ tẹ́lẹ̀ padà, pẹ̀lú àìsí wọn tẹ́lẹ̀. Èsì system tí a fi hàn ni ipò ìlànà Perl, kì í ṣe kóòdù ìdáhùn HTTP tí a ti yọ́ kúrò.
local ní ìwọ̀n ààyè tí ń yipada: kóòdù Perl mìíràn tí a pè nínú blọ́ọ̀kù yẹn tún rí àyíká ìgbà díẹ̀. Kì í ṣe ibi ìpamọ́ ẹ̀rí ìkọ̀kọ̀ fún iṣẹ́ kọ̀ọ̀kan.
Ṣàyẹ̀wò àwọn àyípadà àtẹ̀jáde lẹ́tà ńlá àti àwọn àyípadà àforíjìn fún ẹni tí a yàn. Olùgbà ni ó ń pinnu irú àwọn ìwọlé tí ó ń lò. Ètò proxy kò tún yí ìdánimọ̀ olùmúlò ìlànà padà bẹ́ẹ̀ ni kò nílò shell root ọ̀tọ̀ọ̀tọ̀ kìkì kí a lè jogún rẹ̀.