Как работает PHP-прокси?
Я хочу создать небольшой скрипт, похожий на другие php-прокси
Но как это работает?
Я думаю о прокси-сервере PHP, привыкшем обходить политику AJAX Sane Origin. Если вам нужен настоящий HTTP-прокси, процесс намного сложнее.
Простейший псевдокод:
$_POST['url']
) Примечание. В этой простейшей форме вы разрешаете любому пользователю получать доступ к любому URL-адресу в Интернете через ваш PHP-прокси; должен быть реализован некоторый контроль доступа (например, только зарегистрированные пользователи, в зависимости от того, для чего вы используете прокси-сервер).
Это больше, чем вы думаете. Просто вызвать удаленную веб-страницу и отобразить ее содержимое недостаточно (это будет readfile('http://google.com')
в простейшем случае), вы должны переписать URL-адреса в html-документе, чтобы указать на свой собственный прокси-сервер, вы должны иметь возможность обрабатывать https (или вы разрешаете обычный доступ к конфиденциальным данным, если целевой странице нужны https) и многие другие (которые частично были скомпилированы в RFC 3143 ).
Может быть, у mod_proxy
у Apache есть все, что вам нужно, но если вы действительно хотите написать их самостоятельно, изучение исходного кода других проектов (например, php-proxy ) может дать вам больше информации об этом.