ಪ್ರತಿಕ್ರಿಯೆಯ ಮುಖ್ಯ ಭಾಗದಿಂದ ಹೆಡರ್ ಸಾಲುಗಳನ್ನು ಪ್ರತ್ಯೇಕವಾಗಿ ಸಂಗ್ರಹಿಸಿ. ಪ್ರಾಕ್ಸಿ ಮೂಲಕ ಹೋಗುವ ವರ್ಗಾವಣೆ CONNECT, ದೃಢೀಕರಣ, ಮರುನಿರ್ದೇಶನ ಮತ್ತು ಗಮ್ಯಸ್ಥಾನದ ಪ್ರತಿಕ್ರಿಯೆಯ ಹೆಡರ್‌ಗಳನ್ನು ಒಂದೇ ಕಾರ್ಯಾಚರಣೆಯಲ್ಲಿ ತಲುಪಿಸಬಹುದು:

$headerLines = [];
curl_setopt($handle, CURLOPT_HEADERFUNCTION,
    function ($handle, $line) use (&$headerLines) {
        $headerLines[] = $line;
        return strlen($line);
    }
);

ಈ ಕಾಲ್‌ಬ್ಯಾಕ್ ಕಚ್ಚಾ ಸಾಲಿನ ಕ್ರಮವನ್ನು ಉಳಿಸಿಕೊಳ್ಳುತ್ತದೆ ಮತ್ತು ಸ್ವೀಕರಿಸಿದ ಬೈಟ್‌ಗಳ ಸಂಖ್ಯೆಯನ್ನು ಹಿಂತಿರುಗಿಸುತ್ತದೆ. ಇದು ಪೂರ್ಣ ಸಾಲುಗಳನ್ನು ಪಡೆಯುತ್ತದೆ; ಆದರೆ ಇನ್ನೂ ಅವುಗಳನ್ನು ಪ್ರತಿಕ್ರಿಯೆಗಳಾಗಿ ಗುಂಪು ಮಾಡುವುದಿಲ್ಲ ಅಥವಾ ಅಂತಿಮ ವೆಬ್‌ಸೈಟ್‌ನ ಹೆಡರ್‌ಗಳನ್ನು ಆಯ್ಕೆ ಮಾಡುವುದಿಲ್ಲ.

ಕ್ರಮವನ್ನು ಬ್ಲಾಕ್‌ಗಳಾಗಿ ಅರ್ಥೈಸಿಕೊಳ್ಳಿ

HTTP ಸ್ಥಿತಿ ಸಾಲು ಪ್ರತಿಕ್ರಿಯೆ ಬ್ಲಾಕ್ ಪ್ರಾರಂಭಿಸುತ್ತದೆ, ಮತ್ತು ಖಾಲಿ ಸಾಲು ಅದರ ಹೆಡರ್‌ಗಳನ್ನು ಕೊನೆಗೊಳಿಸುತ್ತದೆ. ಅಂತಿಮ ಗಮ್ಯಸ್ಥಾನದ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಆಯ್ಕೆ ಮಾಡುವ ಮೊದಲು ಆ ಗಡಿಗಳನ್ನು ಸಂರಕ್ಷಿಸಿ. ಮಧ್ಯಂತರ ದೃಢೀಕರಣ ಪ್ರಯತ್ನಗಳು ಮತ್ತು ಮರುನಿರ್ದೇಶನಗಳು ಪ್ರತಿಯೊಂದೂ ಬ್ಲಾಕ್‌ಗಳನ್ನು ಸೇರಿಸಬಹುದು.

ಟ್ರೇಲರ್‌ಗಳು ನಂತರ ಕಾಲ್‌ಬ್ಯಾಕ್ ಮೂಲಕ ಬರಬಹುದು. ಪ್ರತಿ ನಂತರದ ಕ್ಷೇತ್ರವನ್ನು ಮೊದಲ ಪ್ರತಿಕ್ರಿಯೆಗೆ ಜೋಡಿಸುವ ಬದಲು ಅವುಗಳನ್ನು ಆರಂಭಿಕ ಹೆಡರ್‌ಗಳಿಂದ ಬೇರ್ಪಡಿಸಲು ಸಾಕಷ್ಟು ಪಾರ್ಸರ್ ಸ್ಥಿತಿಯನ್ನು ಇರಿಸಿ.

ಸುರಂಗದ ಸಾಕ್ಷ್ಯವನ್ನು ಇರಿಸಿ ಅಥವಾ ಒತ್ತಡಿಸಿ

HTTPS ಸುರಂಗದ CONNECT ಸ್ಥಿತಿಗಾಗಿ CURLINFO_HTTP_CONNECTCODE ಪ್ರತ್ಯೇಕವಾಗಿ ಓದಿ. ಸ್ವೀಕರಿಸಿದ ಸುರಂಗವು ಯಶಸ್ವಿ ವೆಬ್‌ಸೈಟ್ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಸಾಬೀತುಪಡಿಸುವುದಿಲ್ಲ.

ಸಂಗ್ರಾಹಕನಿಗೆ CONNECT ಹೆಡರ್‌ಗಳು ಬೇಕಾಗಿಲ್ಲದಿದ್ದರೆ, CURLOPT_SUPPRESS_CONNECT_HEADERS ಕಾನ್ಫಿಗರ್ ಮಾಡಿದ ಹೆಡರ್ ಔಟ್‌ಪುಟ್ ಮತ್ತು ಕಾಲ್‌ಬ್ಯಾಕ್ ಮಾರ್ಗಗಳಿಗೆ ಅವುಗಳ ವಿತರಣೆಯನ್ನು ನಿಯಂತ್ರಿಸುತ್ತದೆ. ಸಂಯೋಜಿತ libcurl ಮತ್ತು PHP ಬಿಲ್ಡ್‌ನಲ್ಲಿ ಬೆಂಬಲವನ್ನು ಪರಿಶೀಲಿಸಿ. ಒತ್ತಡಿಸುವುದು ಸಂಗ್ರಹವನ್ನು ಸರಳಗೊಳಿಸುತ್ತದೆ ಆದರೆ ರೋಗನಿರ್ಣಯಕ್ಕೆ ಸಹಾಯ ಮಾಡಬಹುದಾದ ಹೆಡರ್-ಮಟ್ಟದ ಸುರಂಗ ಸಾಕ್ಷ್ಯವನ್ನು ತೆಗೆದುಹಾಕುತ್ತದೆ.

ಸ್ಥಿರ ಆಫ್‌ಸೆಟ್ ಬಳಸಿ ಅಥವಾ HTML ಟ್ಯಾಗ್ ಹುಡುಕಿ ಮುಖ್ಯ ಭಾಗವನ್ನು ಮರುಪಡೆಯಬೇಡಿ. ಹೆಡರ್ ಗಾತ್ರಗಳು ಬದಲಾಗುತ್ತವೆ, ಮಧ್ಯಂತರ ಪ್ರತಿಕ್ರಿಯೆಗಳು ಭಿನ್ನವಾಗಿರುತ್ತವೆ, ಮತ್ತು ಮುಖ್ಯ ಭಾಗ ಬೈನರಿ ಅಥವಾ ಖಾಲಿ ಆಗಿರಬಹುದು. ಹಳೆಯ ಆವೃತ್ತಿ-ನಿರ್ದಿಷ್ಟ ದೋಷ ವರದಿ ಊಹಿಸಿದ ಆಫ್‌ಸೆಟ್ ಅನ್ನು ಸಮರ್ಥಿಸುವುದಿಲ್ಲ.

ಮುಖ್ಯ ಭಾಗದ ನಿರ್ವಹಣೆಯನ್ನು ಪ್ರತ್ಯೇಕವಾಗಿ ಇರಿಸಿ, ಮತ್ತು ಸಂಗ್ರಹ ಅಥವಾ ಪಾರ್ಸಿಂಗ್ ವಿಫಲವಾದರೆ ಗಮನಿಸಿದ ಪ್ರತಿಕ್ರಿಯೆ ಹಂತಗಳೊಂದಿಗೆ ವರ್ಗಾವಣೆ ದೋಷವನ್ನು ಇರಿಸಿ. ಇದು ಅಡ್ಡಿಪಡಿಸಿದ ಕಾಲ್‌ಬ್ಯಾಕ್, ವಿಕೃತ ಅಪ್ಲಿಕೇಶನ್ ಡೇಟಾ ಮತ್ತು ತಿರಸ್ಕರಿಸಿದ ಪ್ರಾಕ್ಸಿ ವಿನಿಮಯವನ್ನು ಪ್ರತ್ಯೇಕಿಸುತ್ತದೆ.

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