Форум программистов, компьютерный форум, киберфорум
PHP
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
 Аватар для Finesse
5 / 5 / 1
Регистрация: 16.01.2011
Сообщений: 37

Загрузка документа с удалённого сервера через Proxy

02.02.2011, 09:55. Показов 2477. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, мне надо сделать скрипт, который будет читать файл с другого сервера через прокси сервер и заносить его в переменную. Помогите пожалуйста, весь гугл облазил, ничего путного не нашёл.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
02.02.2011, 09:55
Ответы с готовыми решениями:

Загрузка таблицы БД удаленного сервера
Всех с прошедьшим:) Допустим есть БД MS SQL 2008 R2 Express на удаленном сервере, в прочем, не важно где:) Вопрос состоит следующем,...

Загрузка файла с удаленного сервера
Нужно загрузить файл в временную папку и при загрузке писать загружено n из N мБ Как такое реализировать? и как проверять файли в...

Загрузка данных с удалённого сервера
Здравствуйте! Подскажите пожалуйста, как лучше, правильно или предпочтительнее, загружать данные с удаленного сервера, в мобильное...

6
6 / 6 / 1
Регистрация: 29.10.2009
Сообщений: 143
02.02.2011, 11:42
curl умеет через proxy работать.

PHP
1
2
$ch = curl_init();
curl_setopt($ch, CURLOPT_PROXY, "127.0.0.1:8080");
0
 Аватар для Finesse
5 / 5 / 1
Регистрация: 16.01.2011
Сообщений: 37
02.02.2011, 11:48  [ТС]
Забыл сказать, curl не подключен и возможности подключить нет
0
6 / 6 / 1
Регистрация: 29.10.2009
Сообщений: 143
02.02.2011, 11:58
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
$proxyhost = '203.178.133.10';
$proxyport = 3124;
 
$http_request = 'HEAD http://www.google.com/favicon.ico HTTP/1.1' . "\r\n";
$http_request .= 'Host: www.google.com' . "\r\n\r\n";
 
$fp = fsockopen($proxyhost, $proxyport);
 
if ($fp)
{
    fwrite($fp, $http_request); //передаем запрос
  
    while (! feof($fp)) //и читаем ответ
    {
        $http_response = fgets($fp, 1024);
        //в полученных строках находим код ответа
     
        if (preg_match('/^HTTP\/1\.\d (\d+) (.*)/', $http_response, $found))
        {
            $response_code = $found[1];
            $response_text = $found[2];
            break;
        }
     }
}
else
{
    echo 'Или нет соединения с интернет, или прокси-сервер не рабочий. ';
}
 
if ($response_code == 200)
{
    echo 'Передача закончилась успешно.';
}
мб так?
0
 Аватар для Finesse
5 / 5 / 1
Регистрация: 16.01.2011
Сообщений: 37
02.02.2011, 12:30  [ТС]
Цитата Сообщение от vvsh Посмотреть сообщение
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
$proxyhost = '203.178.133.10';
$proxyport = 3124;
 
$http_request = 'HEAD http://www.google.com/favicon.ico HTTP/1.1' . "\r\n";
$http_request .= 'Host: www.google.com' . "\r\n\r\n";
 
$fp = fsockopen($proxyhost, $proxyport);
 
if ($fp)
{
    fwrite($fp, $http_request); //передаем запрос
  
    while (! feof($fp)) //и читаем ответ
    {
        $http_response = fgets($fp, 1024);
        //в полученных строках находим код ответа
     
        if (preg_match('/^HTTP\/1\.\d (\d+) (.*)/', $http_response, $found))
        {
            $response_code = $found[1];
            $response_text = $found[2];
            break;
        }
     }
}
else
{
    echo 'Или нет соединения с интернет, или прокси-сервер не рабочий. ';
}
 
if ($response_code == 200)
{
    echo 'Передача закончилась успешно.';
}
мб так?
Всё работает, но в какой переменной хранится текст веб страницы?
0
6 / 6 / 1
Регистрация: 29.10.2009
Сообщений: 143
02.02.2011, 12:31
он возвращал только результат запроса. вот тут выводит и текст.

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php
$host = '190.69.81.140';
$port = 80;
 
$fp = fsockopen($host, $port, $errno, $errstr, 30);
 
if (!$fp)
{
    echo $errstr."({$errno})<br />\n";
}
else
{
    $out = "GET http://www.google.by/index.html HTTP/1.0\r\n";
    $out .= "Host: http://google.com\r\n";
    $out .= "Connection: Close\r\n\r\n";
    
    fwrite($fp, $out);  // отправляем заголовки
 
    $res = "";
    while (!feof($fp))
    {
        $res .= fread($fp, 1024);
    }
 
    fclose($fp);
 
    $res = explode("\r\n\r\n", $res, 2);
 
}
 
echo $res[1];
?>
1
 Аватар для Finesse
5 / 5 / 1
Регистрация: 16.01.2011
Сообщений: 37
02.02.2011, 12:53  [ТС]
Цитата Сообщение от vvsh Посмотреть сообщение
он возвращал только результат запроса. вот тут выводит и текст.

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php
$host = '190.69.81.140';
$port = 80;
 
$fp = fsockopen($host, $port, $errno, $errstr, 30);
 
if (!$fp)
{
    echo $errstr."({$errno})<br />\n";
}
else
{
    $out = "GET http://www.google.by/index.html HTTP/1.0\r\n";
    $out .= "Host: http://google.com\r\n";
    $out .= "Connection: Close\r\n\r\n";
    
    fwrite($fp, $out);  // отправляем заголовки
 
    $res = "";
    while (!feof($fp))
    {
        $res .= fread($fp, 1024);
    }
 
    fclose($fp);
 
    $res = explode("\r\n\r\n", $res, 2);
 
}
 
echo $res[1];
?>
Спасибо большое, всё работает!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.02.2011, 12:53
Помогаю со студенческими работами здесь

Загрузка файлов на сервер с удаленного сервера
Здравствуйте, проблема у меня следующая. Нужно сделать так чтобы на сервер перегружались данные с удаленного ФТП с определенной...

Динамический текст, загрузка текстовых файлов с удалённого сервера
Вообщем, задача состоит в том, чтобы вырезать названия песен из подгружаемого файла deferate.xspf, и вставлять в динамическое текстовое...

Загрузка документа с сервера в папку
Здравствуйте, возникла проблема с загрузкой документа. После регистрации пользователя его данные отправляются в бд, и на компьютере...

Загрузка страниц через корпоративный прокси (Proxy)
Добрый день! Мучаюсь уже несколько дней, и никак не могу выйти в просторы интернета в свой программе. Пишу программу на работе. доступ...

Настройка VPS сервера для работы с выделенным ip и удаленного доступа к локальным устройствам через интернет
Всем привет! Нужна помощь. Имеется 2 роутера zyxel keenetic 4g ii. Один 192.168.1.1 расположен в антенне мимо и подключен к интернету yota....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru