ಪ್ರಾಕ್ಸಿ ಮೂಲಕ ಬಂದ ಪ್ರತಿಕ್ರಿಯೆ ಸಾಪೇಕ್ಷ Location ಅನ್ನು ಹಿಂತಿರುಗಿಸಬಹುದು:

Location: ../new/

ಆಧುನಿಕ HTTP ಇಲ್ಲಿ URI ಉಲ್ಲೇಖವನ್ನು ಅನುಮತಿಸುತ್ತದೆ. ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಉತ್ಪಾದಿಸಿದ URL ಗೆ ಅದನ್ನು ಪರಿಹರಿಸಿ. ಆ URL https://docs.example/catalog/old/ ಆಗಿದ್ದರೆ, ಮೇಲಿನ ಉಲ್ಲೇಖ https://docs.example/catalog/new/ ಅನ್ನು ಸೂಚಿಸುತ್ತದೆ. ಪ್ರಾಕ್ಸಿಯ ಹೋಸ್ಟ್ನಾಮ್ ಆಧಾರವಲ್ಲ.

ಸಾಮಾನ್ಯ Python urllib ವಿನಂತಿಗಳಿಗೆ, ಪ್ರಾಕ್ಸಿ ಎಂಡ್ಪಾಯಿಂಟ್ ಸುತ್ತ ಸ್ಟ್ರಿಂಗ್ಗಳನ್ನು ಸೇರಿಸುವ ಬದಲು ಅದರ ಮರುನಿರ್ದೇಶನ ನಿರ್ವಾಹಕವನ್ನು ಬಳಸಿ:

opener = build_opener(ProxyHandler({
    "https": "http://proxy.example:8080",
}))
with opener.open("https://docs.example/catalog/old/",
                 timeout=15) as response:
    final_url = response.geturl()

ಪ್ರಾಕ್ಸಿ ದೃಢೀಕರಣವಿಲ್ಲದ ಈ ಸಾರ್ವಜನಿಕ ದಾಖಲೆ ವಿನಂತಿಗೆ, HTTP ಪ್ರಾಕ್ಸಿ ಪಟ್ಟಿಯಿಂದ HTTP ಅಭ್ಯರ್ಥಿ, ಮಾರ್ಗ ಅನುಮತಿಸಲ್ಪಟ್ಟಾಗ ಉದಾಹರಣೆ ಎಂಡ್ಪಾಯಿಂಟ್ ಅನ್ನು ಬದಲಾಯಿಸಬಹುದು. ವರ್ಗಗಳು urllib.request ನಿಂದ ಬರುತ್ತವೆ. ಅದರ ಸಾಮಾನ್ಯ ನಿರ್ವಾಹಕವು ಬೆಂಬಲಿತ ಮರುನಿರ್ದೇಶನಗಳನ್ನು ತನ್ನ ಮಿತಿಗಳೊಳಗೆ ಅನುಸರಿಸುತ್ತದೆ. final_url ಅಂತಿಮ ಸಂಪನ್ಮೂಲ URL ಅನ್ನು ವಿವರಿಸುತ್ತದೆ, ಅದನ್ನು ತಲುಪಲು ಬಳಸಿದ ಮಧ್ಯವರ್ತಿಯನ್ನಲ್ಲ.

ಮೊದಲು ಪರಿಹರಿಸಿ, ನಂತರ ಮುಂದಿನ ಮಾರ್ಗವನ್ನು ಆಯ್ಕೆಮಾಡಿ

ಮರುನಿರ್ದೇಶನವು ಗುರಿ ಹೋಸ್ಟ್ ಅಥವಾ ಸ್ಕೀಮ್ ಅನ್ನು ಬದಲಾಯಿಸಬಹುದು. ಆದ್ದರಿಂದ ಗುರಿ-ಆಧಾರಿತ ಪ್ರಾಕ್ಸಿ ನೀತಿಯು ಆ ಹೊಸ URL ಅನ್ನೂ ಮೌಲ್ಯಮಾಪನ ಮಾಡಬೇಕು. ಮೊದಲ ಹೋಸ್ಟ್ಗೆ ಕೆಲಸ ಮಾಡಿದ ಮಾರ್ಗ ಮುಂದಿನದಕ್ಕೆ ಮಾರ್ಗವಾಗದಿರಬಹುದು.

ನೀವೇ ಮರುನಿರ್ದೇಶನ ನಿರ್ವಹಣೆಯನ್ನು ಜಾರಿಗೊಳಿಸುವಾಗ, ಡಾಟ್-ಸೆಗ್ಮೆಂಟ್ ನಿರ್ವಹಣೆಯೊಂದಿಗೆ URI-ಉಲ್ಲೇಖ ಪರಿಹಾರವನ್ನು ಬಳಸಿ. ನಿಜವಾದ ಸ್ಥಿತಿ ಕೋಡ್ನ ವಿಧಾನ ನಿಯಮಗಳನ್ನು ಉಳಿಸಿಕೊಳ್ಳಿ ಮತ್ತು ಮರುನಿರ್ದೇಶನ ಮಿತಿಯನ್ನು ವಿಧಿಸಿ. ಹೋಸ್ಟ್ನಾಮ್ಗೆ Location ಸೇರಿಸುವುದು ಆ ಪರಿಹಾರ ಅಲ್ಗಾರಿದಮ್ಗೆ ಪರ್ಯಾಯವಲ್ಲ.

ಮರುನಿರ್ದೇಶನ ವಿಫಲವಾದರೆ, ವಿನಂತಿಸಿದ URL, ಪ್ರತಿಕ್ರಿಯೆ ಸ್ಥಿತಿ, Location ಮೌಲ್ಯ ಮತ್ತು ಪರಿಹರಿಸಿದ ಮುಂದಿನ URL ಅನ್ನು ಉಳಿಸಿ. ಈ ನಾಲ್ಕು ಮೌಲ್ಯಗಳು ಸಾಮಾನ್ಯವಾಗಿ ವೈಫಲ್ಯವು URL ನಿರ್ಮಾಣಕ್ಕೆ ಸೇರಿದೆಯೇ ಅಥವಾ ನಂತರ ಪ್ರಯತ್ನಿಸಿದ ಸಂಪರ್ಕಕ್ಕೆ ಸೇರಿದೆಯೇ ಎಂದು ತೋರಿಸುತ್ತವೆ.

ಸಂಬಂಧಿತ ಲೇಖನಗಳು