Στο PAC, το shExpMatch χρησιμοποιεί μπαλαντέρ τύπου κελύφους. Για υποτομείς του example.com:

if (shExpMatch(host, "*.example.com")) {
    return "PROXY proxy.example:8080";
}

Χρησιμοποιήστε τα επιλεγμένα από την πολιτική τελικά σημεία HTTP σε αυτές τις τιμές επιστροφής· η λίστα διακομιστών μεσολάβησης HTTP παρέχει υποψηφίους για επιτρεπόμενες δημόσιες διαδρομές. Ο αστερίσκος ταιριάζει με μια ακολουθία χαρακτήρων. Δεν είναι τελεστής επανάληψης κανονικής έκφρασης, επομένως ένα .*example.com που μοιάζει με regex αλλάζει το νόημα.

Συμπεριλάβετε ρητά το ακριβές όνομα γονέα όταν ανήκει στην πολιτική:

if (host === "example.com" || shExpMatch(host, "*.example.com")) {
    return "PROXY proxy.example:8080";
}

Η χρήση του *example.com αντί αυτού θα δεχόταν επίσης ονόματα που τελειώνουν σε αυτά τα γράμματα χωρίς διαχωριστική τελεία. Αυτό διευρύνει το σύνολο πέρα από το επιδιωκόμενο όριο τομέα.

Η φορητή βάση μπαλαντέρ PAC περιλαμβάνει τα * και ?· οι κλάσεις χαρακτήρων ποικίλλουν ανά υλοποίηση. Μια κανονική έκφραση JavaScript χρησιμοποιεί αντ' αυτού το test() και τους δικούς της κανόνες αγκύρωσης και διαφυγής.

Ταιριάξτε την επιδιωκόμενη είσοδο. Το host είναι όνομα κεντρικού υπολογιστή, ενώ το url περιλαμβάνει σχήμα και μπορεί να έχει καθαριστεί. Ένας κανόνας τομέα δεν πρέπει να εξαρτάται κατά λάθος από μια διαδρομή που το πρόγραμμα περιήγησης δεν παρέχει ποτέ.

Σχετικά άρθρα