தனித்தனி பயனர் அமர்வுகளுக்கான PHP cURL குக்கீ ஜாடிகள்
தொலை அமர்வைச் சுற்றி PHP cURL குக்கீ நிலைத்தன்மையை வடிவமைத்தல்: நம்பகமான கோப்புப் பெயர்கள், வெளிப்படையான சேமிப்பு மற்றும் ஒரே நேரக் கோரிக்கைகள்.
ஒரு PHP பயன்பாடு Alice மற்றும் Bob இருவருக்கும் சேவை செய்கிறது, இருவரும் அதன் சேவையகப் பக்க cURL கிளையண்டைப் பயன்படுத்தி ப்ராக்ஸி வழியாக அதே தொலை வலைத்தளத்தை அடைகிறார்கள். ஒவ்வொரு கோரிக்கையும் cookies.txt ஐ ஏற்றினால், இரு பயனர்களும் ஒரே தொலை உள்நுழைவை மரபுவழியாகப் பெறலாம். அவர்களின் ப்ராக்ஸி முகவரிகளை மாற்றுவது அந்தக் கோப்பைப் பிரிக்காது.
கோப்புப் பெயரைத் தேர்ந்தெடுப்பதற்கு முன் குக்கீயின் உரிமையாளரைத் தேர்ந்தெடுக்கவும். பொதுவாக அது பயன்பாட்டின் தர்க்கரீதியான தொலை அமர்வு: உள்ளூர் பயனர், ஒரு குறிப்பிட்ட தொலை கணக்கு மற்றும் தேவைப்பட்டால் தனி பணியிடம். ப்ராக்ஸி இறுதிப்புள்ளி ஒரு வழித்தடத் தேர்வு, நம்பகமான அமர்வு அடையாளம் அல்ல. பல பயனர்கள் ஒரு இறுதிப்புள்ளியைப் பங்கிடலாம், ஒரு இறுதிப்புள்ளி வெளியேறும் வழிகளைச் சுழற்றலாம்.
அதே அமர்வின் ஜாடியை ஏற்றி சேமிக்கவும்
பயன்பாடு அதன் அங்கீகரிக்கப்பட்ட அமர்வை சேவையகம் உருவாக்கிய கோப்பு விசையுடன் இணைக்கட்டும். தனியுரிமை குக்கீ அடைவு மற்றும் நம்பகமான $sessionKey உடன், cURL உள்ளமைவு இந்த வடிவத்தைக் கொண்டுள்ளது:
$jar = $cookieDirectory . '/' . $sessionKey . '.cookies';
$ch = curl_init('https://service.example.net/account');
curl_setopt_array($ch, [
CURLOPT_PROXY => 'http://proxy.example.net:8080',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_COOKIEFILE => $jar,
CURLOPT_COOKIEJAR => $jar,
]);
பொது இடைத்தரகரை அனுமதிக்கும் பிணையத்தில் அனுமதிக்கப்பட்ட பொது தள அமர்வுச் சோதனைக்கு, HTTP ப்ராக்ஸி பட்டியல் வேட்பாளர் இறுதிப்புள்ளிகளை வழங்குகிறது. உள்ளமைக்கப்பட்ட ப்ராக்ஸி அங்கீகாரம் அல்லது சேமிக்கப்பட்ட ப்ராக்ஸி சான்றுகள் இல்லாத கைப்பிடியைப் பயன்படுத்தவும், குக்கீ நிலையை அதன் நோக்கமான அமர்வுக்கு ஒதுக்கப்பட்டதாக வைத்திருக்கவும். இந்தத் துண்டு ஒரு கைப்பிடியை உள்ளமைக்கிறது; பயன்பாடு பரிமாற்றத்தைச் செய்து அதன் வழக்கமான கோரிக்கை ஓட்டத்தின் மூலம் முடிவைச் சரிபார்க்கிறது. COOKIEFILE அமர்வின் முந்தைய குக்கீகளை ஏற்றுகிறது. COOKIEJAR கைப்பிடி அதன் சேமிக்கப்பட்ட குக்கீகளை எங்கு எழுதுகிறது என்பதைத் தேர்ந்தெடுக்கிறது. வெளியீட்டுக் கோப்பை மட்டும் அமைப்பது முந்தைய உள்நுழைவை ஏற்றாது.
புதிய அமர்வு கோப்பு இல்லாமல் தொடங்கலாம். அதன் முதல் பரிமாற்றத்திற்கு நோக்கமான ஜாடிப் பாதையைக் கொடுக்கவும், வலைத்தளம் குக்கீகளை நிறுவ அனுமதிக்கவும், அடுத்த கோரிக்கைக்காக விளைந்த நிலையைச் சேமிக்கவும். குக்கீ அடைவு பயன்பாட்டின் பணியாளரால் எழுதக்கூடியதாக இருக்க வேண்டும் மற்றும் பொதுவில் வழங்கப்படும் ஆவண மரத்திற்கு வெளியே வைக்கப்பட வேண்டும். பார்வையாளர் வழங்கிய பயனர்பெயரையோ பாதையையோ கோப்புப் பெயராக மாற்ற வேண்டாம்; சேவையகத்தில் நம்பகமான விசையைத் தேடுங்கள்.
சேமிப்புக்கு கோரிக்கை வாழ்க்கைச் சுழற்சியில் இடம் தேவை
libcurl பொதுவாக கைப்பிடி சுத்தம் செய்யும்போது ஜாடியை எழுதுகிறது. தொலைப் பரிமாற்றத்திற்குப் பிறகு பயன்பாட்டிற்கு வெளிப்படையான சேமிப்புப் புள்ளி தேவைப்பட்டால், அது கோரலாம்:
curl_setopt($ch, CURLOPT_COOKIELIST, 'FLUSH');
இது கைப்பிடிக்கு தற்போது தெரிந்த குக்கீகளை அதன் உள்ளமைக்கப்பட்ட ஜாடியில் எழுதுகிறது. அந்த அமர்வுக்கான கைப்பிடி பயன்பாட்டை முடித்த பிறகு, அதை தொடர்பில்லாத வேலைக்கு ஒதுக்குங்கள். ஏற்கனவே Alice இன் குக்கீகளை வைத்திருக்கும் கைப்பிடியில் ஜாடிப் பாதையை மட்டும் மாற்றுவது Bob இன் தூய அமர்வை உருவாக்குவதற்குச் சமம் அல்ல.
வெற்றிகரமான பதிவிறக்கம் மற்றும் வெற்றிகரமான நிலைத்தன்மையையும் வேறுபடுத்துங்கள். குக்கீ-ஜாடி ஆவணம் கூறுகிறது, சுத்தம் செய்யும்போது ஏற்படும் எழுத்துத் தோல்வி சாதாரண பரிமாற்ற பிழையாகத் திருப்பித் தரப்படாது. ஒரு கோரிக்கைக்கு உள்நுழைவு வேலை செய்து அடுத்ததில் மறைந்தால், அடைவு உரிமை, அனுமதிகள் மற்றும் பயன்பாட்டின் கண்டறியும் வெளியீட்டைச் சரிபார்க்கவும்.
ஒரே நேரக் கோரிக்கைகள் மற்றொரு எல்லையை அறிமுகப்படுத்துகின்றன. இரு பணியாளர்கள் அதே பழைய ஜாடியை ஏற்றி, தனித்தனியாக தங்கள் நினைவக நிலையை மாற்றி, பின்னர் வேறுபட்ட முடிவுகளைச் சேமிக்கலாம். இரு கோரிக்கைகளும் ஒரு தொலை உள்நுழைவைப் பங்கிட்டால், ஒரு அமர்வுக்கான பூட்டு அல்லது அதற்கு இணையான வரிசைப்படுத்தல் முழு ஏற்றுதல், பரிமாற்றம் மற்றும் சேமிப்பு வரிசையை உள்ளடக்க வேண்டும்; இறுதி எழுத்தை மட்டும் பூட்டுவது அவர்களின் முந்தைய நிலைப்பாடுகளை ஒருங்கிணைக்காது. வெவ்வேறு அமர்வுகள் வெவ்வேறு கோப்புகளையும் சுயாதீன பூட்டுகளையும் கொண்டிருக்க வேண்டும்.
வெளியேறும்போது, நோக்கமான தொலை அமர்வை முடித்து, பயன்பாட்டின் கொள்கையின்படி அதன் உள்ளூர் குக்கீ நிலையை ஓய்வு பெறச் செய்யுங்கள். புதிதாகத் தேர்ந்தெடுக்கப்பட்ட ப்ராக்ஸியை பயனர் தொடங்கும் எந்தப் புதிய அமர்வுடனும் இணைக்கலாம், நினைவகத்தில் யாருடைய உள்நுழைவு என்பதைத் தீர்மானிக்கும் பொறுப்பை ப்ராக்ஸி முகவரிக்கு வழங்காமல்.