Скрипт прокси параметра URL

1

Есть ли способ настроить прокси по параметрам URL? Сценарий должен запускаться на сервере Ubuntu. Или можно сделать это с помощью кальмара или чего-то подобного?

Как http://proxyserver.com:3128/http://google.de

Я уже пробовал некоторые скрипты PHP-прокси, но он не работает с ним. Он должен открыть файл в виде потока, но с некоторыми сценариями загружает весь файл, а затем я получаю вывод или не работает с Safari, и в каждом браузере я получаю ошибки с javascript для получения информации о потоке.

Вероятно, это помогает, почему он не работает на сафари. Я не знаю, как я могу редактировать заголовки больше. Принимаются диапазоны и т.д.

Теги:
proxy

3 ответа

0

Я решил это.

Я использовал сервер nginx с параметром proxy_pass

0

Если вы хотите, чтобы php proxy начинался с вас, вы должны пойти с Glype Proxy

Кроме того, ваш URL-адрес http://proxyserver.com:3128/http://google.de недействителен и считается неправильным URL.

Чтобы исправить это, вам нужно избежать другого URL-адреса (с запросом или так). например $URL_in_PHP = "http://proxyserver.com:3128/?url=".urlencode('http://google.de');

var URL_in_javascript = "http://proxyserver.com:3128/?url="+encodeURI('http://google.de');

и попросите ваш прокси-сервер перейти к $_GET['url']

  • 0
    Это один из упомянутых мной прокси-скриптов php. Не работайте с Safari и с ошибками в других браузерах
0

Другое редактирование

Попробуйте этот код здесь. Почта выполнена.

$url = $_GET["url"];
$method = $_SERVER["REQUEST_METHOD"];
$data = array($_POST);
$options = array(
  "http" => array(
    "header"  => "Content-type: application/x-www-form-urlencoded\r\n",
    "method"  => $method,
    "content" => http_build_query($data),
  ),
);
$context  = stream_context_create($options);
$result = file_get_contents($url, false, $context);
$filter = "/(http|https|ftp|ftps)(:\/\/)/i";
$result = preg_replace($filter, "http://YOURDOMAIN.com/FOLDER/LOCATIONOFTHEPROXY.php?url=$1$2", $result);
echo $result;
var_dump($result);

РЕДАКТИРОВАТЬ

Здесь я нашел код POST с использованием PhP. Только теперь это удалось реализовать.

<?php
$url = "url to post to;
$data = array("comment" => "Testing PhP Post", "name" => "A PhP Script");
// use key "http" even if you send the request to https://...
$options = array(
  "http" => array(
    "header"  => "Content-type: application/x-www-form-urlencoded\r\n",
    "method"  => "POST",
    "content" => http_build_query($data),
  ),
);
$context  = stream_context_create($options);
$result = file_get_contents($url, false, $context);
if ($result === FALSE) { /* Handle error */ }
echo $result;
var_dump($result);
?>

Вы пробовали file_get_contents()?

Попробуй это:

<?php
  echo file_get_contents($_GET["url"]);
?>

Вызовите файл с запросом наподобие ?url=http://google.com/.

  • 0
    К сожалению! Это file_get_contents , а не get_file_contents .
  • 0
    Да, я пробовал во многих вариантах, это не работает
Показать ещё 7 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню