Робота через proxy сервера на php за допомогою бібліотеки curl
Робота через PROXY сервера на PHP за допомогою бібліотеки CURL
Доброго времени суток, в даній статті опишу можливість отримувати контент віддаленої WEB сторінки використовуючи проксі сервер.
Нещодавно, написав інструмент для автоматичної перевірки позицій сайту в пошуковій видачі, і все б добре, але зіткнувся з проблемою ...
Проблема друга - після 4 -5 го запиту (ключ один, змінюється тільки сторінка видачі), яндекс видає сторінку, в якій повідомляється про підозру в автоматичних запитах, і пропонують ввести капчу, і дане повідомлення випливає незалежно від інтервалу між запитами. Дану проблему можна вирішити емулюючи клієнтську програму, наприклад, FireFox, але і тут немає гарантії, що IP НЕ попалили. І я вирішив, використовувати 100% варіант з проксі, і так, приступимо.
Що потрібно, для роботи PHP через проксі
Для реалізації задуманого, нам знадобиться підключити бібліотеку libcurl до движку PHP:
Для Unix систем необхідно зібрати PHP з опцією --with-curl [= DIR], де DIR - ім'я директорії, що містить піддиректорії lib і include. Директорія "include" повинна містити піддиректорію "curl" з файлами easy.h і curl.h. Директорія "lib" повинна містити файл libcurl.a.
Для Windows систем необхідно встановити PHP з підтримкою даного модуля, а потім скопіювати файли libeay32.dll і ssleay32.dll з директорії DLL Win32 дистрибутива PHP в директорію SYSTEM (Нпрімер C: \ WINNT \ SYSTEM32 або C: \ WINDOWS \ SYSTEM).
Що таке libcurl
Libcurl - це бібліотека функцій, яка дозволяє взаємодіяти движок php з віддаленими серверами, з використанням різних протоколів.
Приклад отримання контенту з віддаленої сторінки через PROXY:
А в моєму випадку, при кожному виклику даної функції, прокскі змінюється.