PAC სკრიპტი ჰოსტის სახელს URL-იდან იღებს. dashboard შედარებამდე ავტომატურად არ იქცევა dashboard.example.internal-ად:

function FindProxyForURL(url, host) {
  if (isPlainHostName(host)) {
    return "DIRECT";
  }
  return "PROXY 203.0.113.10:8080";
}

დოკუმენტაციის მისამართის ნაცვლად გამოიყენეთ რეალური HTTP საბოლოო წერტილი; HTTP პროქსების სია გთავაზობთ კანდიდატებს საჯარო დანიშნულების ტესტებისთვის, სადაც ეს მარშრუტი დაშვებულია. ამ სკრიპტში მოკლე სახელი განზრახ აბრუნებს DIRECT-ს; სრულად კვალიფიციური სახელი პროქსის განშტოებამდე აღწევს. „Plain hostname“ ნიშნავს წერტილის გარეშე ჩანაწერს და არა დასკვნას, რომ ჰოსტი სანდო ლოკალურ ქსელშია.

თუ სასურველი პოლიტიკა ერთი შიდა დომენია, შეადარეთ სწორედ ამ დომენს და არა ყველა მოკლე სახელს. dnsDomainIs-სა და shExpMatch-ს განსხვავებული შეყვანა და შაბლონის სემანტიკა აქვთ. .example.internal-ისთვის სუფიქსის შემოწმება არ მოიცავს ზუსტ ფესვს example.internal; როცა ეს განზრახვაა, ეს შემთხვევა ცალკე ჩართეთ. Shell-ის სტილის შაბლონი არ არის IP ქვექსელი და არც რეგულარული გამოსახულება.

შეადარეთ სკრიპტის შედეგი მოკლე სახელისთვის, სრულად კვალიფიციური სახელისთვის, დაუკავშირებელი საჯარო ჰოსტისთვის და ნებისმიერი განზრახული დომენის ფესვისთვის. ეს ამოწმებს წესის არჩევას პროქსისთან დაკავშირების გარეშე. შეამოწმეთ პირველი დაბრუნებული წესი, როცა ფართო DIRECT განშტოება ხელს უშლის სხვაგვარად მისაწვდომი საბოლოო წერტილის გამოცდას.

გამოიყენეთ სახელების შედარება, როცა ის გამოხატავს პოლიტიკას; DNS დამხმარეები საკუთარ ძიებებსა და შეყოვნებას ამატებენ. ბრაუზერის იმპლიციტური ლოკალური გვერდის ავლაც ცალკე შეინახეთ სკრიპტისგან. localhost-ის შემოწმება ვერ შეცვლის საჯარო ან შიდა დანიშნულების რეალურ ჩანაწერს.

დაკავშირებული სტატიები