Карта сайта Хакер в RSS Энциклопедия Хакера PDA версия сайта Почтовые рассылки Хакера    Хакер в Twitter Хакер в ВКонтакте Приложение Хакер для Facebook Хакер на Formspring.me
Журнал Новости Форум Видео Life Xakep Live (блоги)
Bugtrack Статьи Блог Поиск English
Трюки с phpinfo Трюки с phpinfo
Совсем недавно в паблике появилась информация о новом интересном подходе к эксплуатации уязвимостей класса LFI с помощью бесполезной на первый взгляд функции phpinfo() и временных загрузочных файлов. Берем на вооружение этот полезный прием....
Интервью с создателем NGINX Игорем Сысоевым Интервью с создателем NGINX Игорем Сысоевым
Легкий веб-сервер NGINX буквально только что вышел на 2 место по популярности в интернете. А незадолго до этого создатель NGINX привлек 3 млн. долларов инвестиций и основал одноименную компанию. В общем, поводов для общения с Игорем Сысоевым у нас была масса....

Сжимающий PHP-прокси своими руками

Bookmark and Share

1. Введение

В данной статье пойдет речь о нестандартном использовании PHP: для создания сжимающего трафик PHP-скрипта, который можно использовать в качестве виртуального прокси-сервера. Профессионалы PHP-фронта здесь вряд ли найдут что-то новое: такое применение php не мое ноу-хау и никаких особых функций php не используется. Остальные в этой статье узнают о новом способе экономии кило-мега-гигабайтов во время веб-серфинга. Не удивлюсь, если кто-то предприимчивый, прочитав эту статью, начнет уже завтра экономить свои мегабайты. Особенно после того, как узнает, каким образом можно построить схему прозрачной работы этой виртуальной прокси.

На заре моей диалап-юности модемы обменивались сжатыми данными, из-за чего конечная скорость веб-серфинга была выше в сравнении со скачиванием zip-архива. Таким образом экономились время и деньги клиента за счет нагрузки на процессоры модемов во время компрессии. Настали другие времена: диалап постепенно сдает свои позиции под натиском выделенных линий. А тут уже ни о каком сжатии трафика на чьих-либо процессорных мощностях речи не ведется как правило: трафик идет в своем первозданном виде, ни на байтик не сжат (если этим не озаботились на стороне сервера). А ведь его можно сжать!..

Для этого нам понадобится еще одно звено между браузером и веб-сервером, которое, как модем, будет сжимать весь входящий (входящий для браузера) трафик. Звеном этим будет являться обычный с виду php-скрипт на удаленном веб-сервере. Именно этот скрипт в ответ на специально составленный запрос и будет скачивать необходимую вам страницу и уже в сжатом виде отдавать ее браузеру. Основные требования к хостингу, на котором расположен этот php-скрипт: отсутствие баннеров хостера, возможность использования CURL и GZIP (проверить их доступность можно запуском скрипта с вызовом функции phpinfo).

Чтобы лучше понять механизм работы системы промежуточного сжатия трафика, рассмотрим более подробно технологию ее работы. 

На рисунке ниже представлена схема трех вариантов загрузки страницы: обычный вызов, сжатие данных на промежуточном сервере и прозрачная работа со сжатием страницы на промежуточном сервере. Рассмотрим что происходит в каждом из случаев.

2. Получение браузером страницы из сети

2.1. Обычный вызов

Допустим пользователя заинтересовала страница page.html на сервере site.com . Он набирает URL site.com/page.html в строке адреса. Браузер после этого производит по сети http-запрос страницы http://site.com/page.html (на рисунке - тонкая пунктирная стрелка, первая слева). В ответ на этот запрос веб-сервер site.com выдает http-ответ браузеру и следом за ним тело страницы page.html (на рисунке – жирная стрелка, вторая слева). После этого браузер отображает пользователю на экране монитора содержимое полученной страницы.

2.2. Сжатие данных на промежуточном сервере

Введем промежуточный сервер webzip.com между браузером и веб-сервером site.com, на котором будет происходить сжатие данных. Алгоритм получения страницы page.html такой же, как и в предыдущем случае за исключением того, что браузер запрашивает страницу не непосредственно у site.com, а через webzip.com. Причем полноразмерные (несжатые данные) идут только между site.com и webzip.com, между браузером и webzip.com тело страницы идет в сжатом виде (на рисунке - жирная пунктирная стрелка, третья слева). Заметим, что по причине использования возможностей php для сжатия страницы её адрес, запрашиваемый браузером, примет вид http://webzip.com/myzip.php?url=http://site.com/page.html. Веб-сервер (webzip.com), получив этот запрос, вызывает скрипт myzip.php, а тот в свою очередь по get-параметру (пусть им будет параметр с именем «url») вызова производит запрос на http://site.com/page.html. Полученную страницу скрипт myzip.php отдает браузеру в сжатом виде.

2.3. Прозрачная работа со сжатием страницы на промежуточном сервере

От предыдущего случая данный отличается тем, что работа виртуальной сжимающей прокси для браузера, а соответственно и пользователя, не видны. Достигается это за счет введения еще одного звена, между webzip.com и браузером. Этим звеном является обычный http-прокси, который помимо всего прочего занимается переписыванием исходящих заголовков http-запросов (например, с http://site.com/page.html на http://webzip.com/myzip.php?url=http://site.com/page.html). 

3. Настройка прозрачной работы

3.1. Установка скриптов

Скачать скрипты, которые реализуют все вышеописанное, можно здесь. В архиве три файла: myzip.php, func.inc.php, log.php. Первый – основной файл, к которому обращается клиент. Второй – содержит определения функций для первого. Третий – предназначен для отображения статистики работы прокси (содержит шаблон страницы статистики, суть берется из файлов log.log и count.log).

Как уже было сказано ранее, разместить скрипты следует на любом хостинге, где есть поддержка PHP, CURL, ZLIB и отсутствуют банеры. В интернете такое можно без труда найти за 30 рублей в месяц. 

Не пугайтесь платности хостинга – он с легкостью будет окупаться. Например, если вы платите 0.05 $/МБ - потребуется 20 сэкономленных мегабайт для оплаты хостинга, дальше выгода. По моему опыту это порядка 100-150 МБ веб-серфинга (среднее сжатие – в 4-7 раз, хотя встречается и до 12).

Проверить правильность работы можно, набрав в браузере следующий адрес: http://webzip.com/myzip.php?url=http://ya.ru. Если всё сделано правильно – загрузится страница яндекса с немного видоизмененным заголовком (title).

3.2. Настройка Proxomitron-а

Использовался Proxomitron ver. Naoko 4.4 (http://www.proxomitron.ru). 

Итак, мы хотим добиться от проксомитрона возможности прозрачной работы с веб-проксей, иными словами скрытое преобразование исходящих URL-ов от браузера. Для этого в главном окне проксомитрона нажимаем клавишу «Заголовки» («Headers»). В открывшемся окне («Фильтры заголовков HTTP» / «HTTP Header Filters») пролистываем до строки «URL: Alias Redirector (Out)», выделяем ее. Жмем кнопку «Изменить» («Edit»), в развернувшемся окне («Редактор фильтров заголовка» / «HTTP Header filter editor») заполняем поля следующим образом (все, кроме первого):

Заголовок HTTP (HTTP Header) (!не меняем!) URL: Alias Redirector (Out)
Совпадение с URL (URL Match) *
Значение заголовка (Header Value Match) *
Текст замены (Replacement text) $RDIR(http://webzip.com/myzip.php?url=\u)
Где http://webzip.com/ - URL вашего сайта, myzip.php – имя скрипта, который вы закачали на сайт.

Вся суть в последней строке: проксомитрон будет менять любой URL (параметр «\u») от браузера на http://webzip.com/myzip.php?url=\u. Если написать вместо $RDIR команду $JUMP, то работа проксомитрона будет полупрозрачной: браузер будет просто перенаправляться на новый URL. В случае использования $RDIR – перенаправление будет происходить незаметно для браузера.

Закрываем окна, нажимая последовательно «Ок», «Применить» («Apply»), «Ок». Если есть желание не повторять эту процедуру снова – сохраните настройки.

В браузере прописываем прокси сервер с IP=127.0.0.1 и портом 8080 (порт, прослушиваемый проксомитроном по умолчанию). Убедиться в том, что система сжатия трафика работает, можно всё так же - по изменяющимся заголовкам страниц (новый <title> слева направо: исходный и переданный браузеру размер страницы в байтах, коэффициент сжатия, использование куков, get, post параметров, время генерации страницы в секундах, исходный заголовок). 

Поделюсь радостью - у меня даже аська заработала сквозь проксомитрон.

4. Тестовая экономия

Настроив проксомитрон, решил выразить в цифрах новую работающую систему. Далее следует что-то вроде протокола 15-ти минут ускоренного веб-серфинга. 

Проверил через веб-интерфейс почту на mail.ru: главная страница – уже 39 кБ экономии; вошел в ящик – уже 60 кБ; побегал по папкам, посмотрел почту; вышел - уже 300 кБ экономии. Задал парочку запросов яндексу – на выходе 570 кБ. Отправил три смски (Мегафон, Билайн, МТС). Походил по форумам на sql.ru и rsdn.ru. Поискал в гугл парочку абракадр. Смотрю на счетчик - итого два мегабайта экономии . Вроде бы пустячок, но это всего лишь час обычной работы. Что же получится у вас за месяц работы? Копейка рубль бережет.

5. Итого

Сразу предупрежу, что хостеры не очень приветствуют создание на их стороне чего-либо проксо-подобного. Используйте скрипт на свой страх и риск, отвечать вам. Однако, если вы не устраиваете публичной прокси с многогигабайтным трафиком, то вряд ли они заметят 200-500 МБ на скрипте – для них это капля в море. К тому же, если встроить скрипт сжатия в другую страницу, то заметить подвох хостеру будет еще сложнее. Она внешне (без вызова с нужным параметром «url») будет представлять собой обыкновенную домашнюю страницу. Хотя при особом желании провайдер и эту уловку обнаружит, но шанс мал. Ну, а если и обнаружит – скажете, что ваш сайт сломали и «невиноватые мы». В самом худшем случае придется сменить хостера (или аккаунт у прежнего :)).

Не рекомендую использовать подобную проксю для доступа к очень секретной информации, поскольку все логины-пароли идут сквозь хостера и без труда будут перехвачены при его желании. Однако, в случае применения HTTPS не всё так просто для подлого хостера. Несмотря на некоторую долю «неанонимности» использования технологии ее можно использовать для легкого хака (легкого, то есть вас не будут искать ФСБешники в случае обнаружения атаки). Например, анонимно побаловаться с обработкой вводимых параметров на сайте одногруппника.

Если вы заглянете в код скрипта, то обнаружите там парочку параметров, при помощи которых можно включать/выключать возможности скрипта. Например, изменение заголовка с целью вывода статистики работы скрипта (параметр MOD_TITLE). При желании к скрипту можно без труда добавить дополнительную функциональность. Например, вывод протокола работы в базу данных с целью его дальнейшего анализа (протокол по умолчанию можно посмотреть в log.php).

Замечу, что в Интернете уже существуют подобные сервисы (например, www.tcompressor.ru и www.toonel.net), как платные так и бесплатные. У них у всех есть свои плюсы и минусы. Основное достоинство применения вышеописанной технологии в том, что вы сами являетесь хозяином своего трафика (нет баннеров, нет оплаты, нет сомнительных приложений, нет хостера, размещающего сервис) – всё в ваших руках.

P.S. Не считаю свои слова истиной в последней инстанции, поэтому, если я в чем-то ошибаюсь, поправьте меня. Спасибо! 

P.P.S. Уверен, скрипт тоже не без греха, поэтому поправки приветствуются!



Теги: PHP , программирование , прокси





ПРЕДЫДУЩИЕ СТАТЬИ
Маскируемся или как не платить деньги админу за лишний комп в локалке
Мыль анонимно
ОБСУЖДЕНИЕ СТАТЬИ
Логин:
Пароль:
Если у вас есть форумный логин - вы можете использовать его, иначе анонимный гостевой доступ.

Для оставления комментария вы можете зарегистрироваться по упрощенной процедуре.

Обсуждение этой статьи на forum.xakep.ru
Для отправки сообщения введите код, указанный на картинке
Сообщение

UserГость
10.05.2007 19:11:59
Ответить Ссылка
Да таких сервисов инете навалом toonel,traffic optimizer, tcompressor..
UserГость
10.05.2007 19:11:59
Ответить Ссылка
>siv >Отправлено: 20.10.2006 1:00:42 >Да таких сервисов инете навалом toonel,traffic optimizer, tcompressor.. Согласен, об этом в статье упомянуто в самом конце: Замечу, что в Интернете уже существуют подобные сервисы (например, www.tcompressor.ru и www.toonel.net), как платные так и бесплатные. У них у всех есть свои плюсы и минусы. Основное достоинство применения вышеописанной технологии в том, что вы сами являетесь хозяином своего трафика (нет баннеров, нет оплаты, нет сомнительных приложений, нет хостера, размещающего сервис) – всё в ваших руках. С уважением, автор.
UserГость
10.05.2007 19:11:59
Ответить Ссылка
Нифига оно не пашет ((( а жаль
UserГость
10.05.2007 19:11:59
Ответить Ссылка
Заливал на 2 платных хостинга, НИФИГА НЕ ПАШЕТ :( Автор, может подскажешь почему?
UserГость
10.05.2007 19:11:59
Ответить Ссылка
>Нифига оно не пашет ((( а жаль Надо разбираться. Пишите - будет время помогу. >Заливал на 2 платных хостинга, НИФИГА НЕ ПАШЕТ :( Автор, может подскажешь почему? См. почту.
UserГость
10.05.2007 19:11:59
Ответить Ссылка
NDCL.MAIL@1.ru - меил деливери фэилд. Пишите на мыло.
UserГость
10.05.2007 19:11:59
Ответить Ссылка
Спасибо за скрипт. Пара взмахов текстовым редактором, и получился вполне рабочий прокси. И скорость огромная по сравнению с бесплатными серверами. А не пашет, возможно, потому, что в статье передается параметр url, а скрипт в архиве настроен на urlx.
UserГость
10.05.2007 19:11:59
Ответить Ссылка
А у меня че-то не заработало - хостинг платный на extmail.com (стандартный пакет), вроде все сервисы есть. Набираю тестовую строку типа - mysite.com/myzip.php?urlx=http://ya.ru и ниче в ответ (Opera пишет отправка запроса...)
UserГость
10.05.2007 19:11:59
Ответить Ссылка
Очень приятная штука. Работает просто замечательно.
UserГость
10.05.2007 19:11:59
Ответить Ссылка
Всё работает, заявляю с 100% увереностью, почему автор статьи пишет myzip.php?url=http:// если там реально надо писать urlx Жмёт на примере маил.ру 51647/12611 Осталось допереть как Mirc и icq заставить сжимать трафф
UserГость
10.05.2007 19:11:59
Ответить Ссылка
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! в статье в разделе Настройка Proxomitron-а все url= заменять на urlx= (либо меняйте define в начале кода скрипта myzip.php в обратную сторону). Тема про url и urlx (там реально надо писать urlx ). Когда писал статью для наглядности ставил url. А когда выкладывал на хакер-ру в скриптах просто забыл поменять мой рабочий urlx на url. Сейчас доступа к сайтовой версии не имею :( Поэтому как есть так есть. Хотя url-urlx можно рассматривать в качестве проверки на смекалку ) Кстати, ICQ работал через проксю точно, а вот IRC не пробовал.
UserГость
10.05.2007 19:11:59
Ответить Ссылка
У меня в Опере открывается текст скрипта, а в IE пишет ГОТОВО и ничего не грузит :( В чем прикол? П.С.: у меня внутренний трафик дешевле внешнего. Скрипт на хостинге провайдера. Если через скрипт пройдет инфа, она станет локальной?
UserГость
10.05.2007 19:11:59
Ответить Ссылка
2 Speek Открывается текст скрипта - на сервере хостинга точно установлен и настроен ПХП??? похоже, что нет. Попробуйте, что выведет скрипт с содержанием <? phpinfo (); ?> Скрипт на хостинге провайдера. Если через скрипт пройдет инфа, она станет локальной? - главное, чтоб на хостинге провайдера не было зафаерволено обращение ВО внешнюю сеть с хостинговой машины (не считая необходимости активного CURL-а на том же серваке).
UserГость
10.05.2007 19:11:59
Ответить Ссылка
<b onclick=`alert();`>КЛИКНИ МЕНЯ</b>
UserГость
10.05.2007 19:11:59
Ответить Ссылка
Что то я понять немогу, как происходит сжатие???
UserГость
10.05.2007 19:11:59
Ответить Ссылка
2 vaska 'Для этого нам понадобится еще одно звено между браузером и веб-сервером, которое, как модем, будет сжимать весь входящий (входящий для браузера) трафик. Звеном этим будет являться обычный с виду php-скрипт на удаленном веб-сервере. Именно этот скрипт в ответ на специально составленный запрос и будет скачивать необходимую вам страницу и уже в сжатом виде отдавать ее браузеру. Основные требования к хостингу, на котором расположен этот php-скрипт: отсутствие баннеров хостера, возможность использования CURL и GZIP (проверить их доступность можно запуском скрипта с вызовом функции phpinfo). ' Плюс два абзаца ниже.
UserГость
10.05.2007 19:11:59
Ответить Ссылка
Вообщем работает, но иногда выскакивает вот такая надпись HTTP-header error /olen/ ! что это? почему? из-за чего?
UserГость
10.05.2007 19:11:59
Ответить Ссылка
А если провайдер предоставляет демо доступ, и по нему доступен сайт, куда залил этот прокс - то вообще сказка :)
UserГость
10.05.2007 19:11:59
Ответить Ссылка
Автор, можешь предложить подходящий халявный хостинг? На НьюМэйле пробовал, еще где-то, на Н17 подал уже заявку. Вобщем устал уже...
UserГость
10.05.2007 19:11:59
Ответить Ссылка
На халявных не будет работать, никто не даст курл и сокеты юзать на фри хостингах, ищите платник....лучше подскажите из-за чего ошибка HTTP-header error /olen/ !
UserГость
10.05.2007 19:11:59
Ответить Ссылка
ошибка HTTP-header error /olen/ ! --- вызвано тем, что скрипт не смог найти \r\n\r\n или \n\n (разделитель тела страницы и служебного заголовка). Почему в конкретном случае - без понятия (кстати, olen=олень:) ). Надо логи смотреть. У меня такое было на двух-трех сайтах. Вам так критичен именно тот сайт-олень?)
UserГость
10.05.2007 19:11:59
Ответить Ссылка
Насчет халявного хостинга - см. ответ Не_Admin. Добавлю, что на бесплатных помимо отсутствия курла могут еще в принудительном порядке добавляться баннеры, которые все попортят. Могу посоветовать потратить 1 уе (=пиво+-) и получить хостинг на месяц, которого для скрипта хватит с головой. Либо могу за тот же 1WMZ организовать сервис любому желающему, но без гемороя (+настроенный проксомитрон) )) Пишите в почту.
UserГость
10.05.2007 19:11:59
Ответить Ссылка
ошибка HTTP-header error /olen/ происходит непонятно почему, и может происходить на разных сайтах, а бывает обновишь страницу, и грузица нормально, может зависит от скорости интернета, или лагах на серваке?
UserГость
10.05.2007 19:11:59
Ответить Ссылка
Я тоже писал такую шнягу на пхп, только не сжимающую траф... юзаю этот 1-килобайтный скриптик на хакнутых хостингах для спама...
UserГость
10.05.2007 19:11:59
Ответить Ссылка
поделись скриптом
UserГость
10.05.2007 19:11:59
Ответить Ссылка
2 НЕ_Admin HTTP-header error /olen/ должно зависеть только от ответа (служебных заголовков) целевого сервака. А вот с тем, чтоб на одной и той же странице- то Олень, то НЕ олень - с таким не встречался. Видимо, зависит от промежуточных серваков, может от некоторой промежуточной прокси - которая из кеша выдает хедер несколько иной, чем при прямой загрузке. Пофиксить теоретически можно - но в данном случае не смогу, т.к. у меня такого при просмотре страниц не случается.
UserГость
10.05.2007 19:11:59
Ответить Ссылка
fg gff gh
UserГость
10.05.2007 19:11:59
Ответить Ссылка
Запускаю скрипт на платном хостинге а он мне ошибку выдает: Warning: Call-time pass-by-reference has been deprecated - argument passed by value; If you would like to pass it by reference, modify the declaration of [runtime function name](). If you would like to enable call-time pass-by-reference, you can set allow_call_time_pass_reference to true in your INI file. However, future versions may not support this any longer. in /home/antoxas1/htdocs/7/myzip.php on line 44 Такая же ошибка в строках 45 и 87. Подскажите чаво мне делать...Please !!!
UserГость
10.05.2007 19:11:59
Ответить Ссылка
2 Ant0}{@ Это из-за настройки пхп. Отключена в пхп передача параметров по ссылке. См. почту.
UserГость
10.05.2007 19:11:59
Ответить Ссылка
new
UserГость
10.05.2007 19:11:59
Ответить Ссылка
bbbbbb
UserГость
10.05.2007 19:11:59
Ответить Ссылка
Идея оригинальная, мне очень понравилось! И главное - все отлично работает! Респект 2 D_N_S
UserГость
10.05.2007 19:11:59
Ответить Ссылка
Подскажите пожалйуста, почему при запуске скрипта в Опере выдается пустая страница, на которой нет ни одного символа? А в Internet Exploere ошибку 404 Невозможно найти страницу ??? Пробовал на 2-х хостингах. Один из них точно соответствует заявленным параметрам: php, zlib, curl - все это есть на хостере.
UserГость
10.05.2007 19:11:59
Ответить Ссылка
2 diod Используй имя параметра вместо url -> urlx. Если не поможет - стукнись в мыло, попробуем разобраться.
UserГость
10.05.2007 19:11:59
Ответить Ссылка
Работает - супер!!! экономит 30-50%, но только по HTTP :)
UserГость
10.05.2007 19:11:59
Ответить Ссылка
Здравствуйте. Простите я не совсем понял связку Промиксион и скрипта, он подмену не делает :( приходится вручную прописывать тогда все работает. Пробовал вариант с подменов префикса в IE не на всех сайтах проходит :) Кажится Вы в статье не добавили что нужно в IE настройках поставить галочку на Использовать HTTP 1.1 через прокси соединения.
UserГость
10.05.2007 19:11:59
Ответить Ссылка
gzip.ru у них вроде такойже скрипт :)
UserГость
10.05.2007 19:11:59
Ответить Ссылка
2 easywind Кажится Вы в статье не добавили что нужно в IE настройках поставить галочку на Использовать HTTP 1.1 через прокси соединения. --- можно добавить, согласен, а можно и оставить как есть - т.к. это обычное действие при работе через проксю - если человек этого не сделает, то и скрипт на хостинге он не разместит тем более.
UserГость
10.05.2007 19:11:59
Ответить Ссылка
2 easywind --- не такой же, а похожий. Не говоря о том, что у них этот сервис не бесплатен.))
UserГость
20.10.2007 19:02:23
Ответить Ссылка
Не получается ничего. При url пустая страница, при urlx куча ошибок типа Cannot modify header information - headers already sent by
UserГость
10.05.2007 19:11:59
Ответить Ссылка
Подскажите, плиз, где можно недорого поюзать хостинг с CURL и GZIP.
UserГость
10.05.2007 19:11:59
Ответить Ссылка
А лучше поставить Traffic Compressor (www.tcompressor.ru) И не мучиться
UserГость
10.05.2007 19:11:59
Ответить Ссылка
2 DNS Спасибо за скриптик... работает прекрасно, но я бы на твоем месте его доработал... а именно, что качается статистики, разделил бы ее, добавил бы страницу настроек и т.п., т.к. вещица класная.
UserГость
10.05.2007 19:11:59
Ответить Ссылка
D_N_S--- напоминает остальное доработать напильником. статья для людей? так извольте писать дотошно :)
UserГость
10.05.2007 19:11:59
Ответить Ссылка
2 Admin про И не мучиться --- а еще лучше иметь возможность выбора
UserГость
10.05.2007 19:11:59
Ответить Ссылка
2 Nd --- в скрипте необходимый минимум для работы . Добавить функционала - на выбор каждого (к тому же функционал = рост требований скрипта к хостингу = МБ либо CPU... бд). Однако немного статистики скрипт ведет. Запусти урл с myzip.com в виде http://xxx.ru/myzip.php?econom - увдишь и что качается и сколько сэкономлено. Настройки сделаны в виде дефайнов - переделать на раз-два можно. Короче, было бы кому-то это (настройки и прочее) действительно нужно - сделал бы )))
UserГость
10.05.2007 19:11:59
Ответить Ссылка
2 easywind про напильником --- Статья не претендует на звание учебника по используемым технологиям - поэтому это не доработать напильником. Был бы учебник - я бы написал про FTP (что такое, где взять, как соедняться...), PHP (что такое, где взять, синтаксис...), работу HTTP и многое другое. Представьте каков объем получился бы. И ведь всем не угодишь - кто-то обязательно тогда напишет, что много воды. К тому же, описания используемых технологий в привеликом множестве разбросаны по рунету. Так что (ИМХО) статья для людей - с поправкой для продвинутого пользователя.
UserГость
10.05.2007 19:11:59
Ответить Ссылка
не хватает экономической выкладки
UserГость
10.05.2007 19:11:59
Ответить Ссылка
выкладка в статье имеется ) легенькая правда... и едва заметная )
UserГость
10.05.2007 19:11:59
Ответить Ссылка
спасибо скрипт работает :) сжало весь мой http траффик за сегодня в 3 раза :))
UserГость
10.05.2007 19:11:59
Ответить Ссылка
hacked
UserГость
10.05.2007 19:11:59
Ответить Ссылка
<script>allert()</script>
UserГость
10.05.2007 19:11:59
Ответить Ссылка
yuiyui
UserГость
10.05.2007 19:11:59
Ответить Ссылка
Проблема Bad Request Your browser sent a request that this server could not understand. Выходит при входе в почту на Rambler`e С яндексом тоже проблема
UserГость
10.05.2007 19:11:59
Ответить Ссылка
прошу ответить на quantified(пес)rambler.ru
UserГость
10.05.2007 19:11:59
Ответить Ссылка
Спасибо, интересная тема, есть вопросы. На некоторых сайтах(mail.ru к примеру) выдает предупреждения типа Warning: Header may not contain more than a single header, new line detected. in ... func.inc.php on line 85 Cannot modify header information - headers already sent by (output started at ... func.inc.php:85) in ... func.inc.php on line 85. Последняя строка повторяется несколько раз, затем тоже для строк 110, 111, 112 и, наконец набор иероглифов (наверное сам контент). И еще куда делся архив с закачки.
UserГость
10.05.2007 19:11:59
Ответить Ссылка
На самОм почтовом сервисе меил-ре проблем не было (не считая закачки вложений). --- И еще куда делся архив с закачки.--- возможно в данном случае эта проблема как раз и всплывает. Текущая версия скрипта файлы не даунлоадит и с аяксом не дружит - нужна доработка. Все остальное - на ура (не считая редких хитро выдуманных сайтов%) ).
UserГость
10.05.2007 19:11:59
Ответить Ссылка
*Проблема решена*
UserГость
10.05.2007 19:11:59
Ответить Ссылка
бугага
UserГость
10.05.2007 19:11:59
Ответить Ссылка
и че оно работает?
UserГость
10.05.2007 19:11:59
Ответить Ссылка
Автору - ОГРОМНОЕ спасибо! Идея вертелась в голове уже давно, никак руки не доходили до реализации. Пользую уже месяц, смотрите: Суммарное количество байт 28801612 /7205117 (вх/вых) Суммарная экономия в 21596495 байт Вещь! Да, я написал прогу - замену проксомитрону для именно такого перенаправления, работает на PC и PocketPC, могу поделиться (исходник на c# прилагается).
UserГость
10.05.2007 19:11:59
Ответить Ссылка
sfoto, делись :) prizrakv@inbox.ru
UserГость
10.05.2007 19:11:59
Ответить Ссылка
КАК у вас могла заработать АСЬКА через связку проксомитрон-данный скрипт?
UserГость
23.05.2007 13:56:35
Ответить Ссылка
нУ как?
UserГость
13.06.2007 2:10:30
Ответить Ссылка
проблема такая, в опере с кодировкой проблеммы происходят, только ромбики с вопросиками видны, может подскажете как такое лечить, и еще как сделать что бы просто мой ip не светился а все остальное передавалось
пысы: скрипт стоит на дедике
UserГость
17.06.2007 5:44:51
Ответить Ссылка
>КАК у вас могла заработать АСЬКА через связку проксомитрон-данный скрипт?
Легко. Qip (за остальных не ручаюсь) использовал proxomitorn как localhost http(s) проксю. А проксомитрон в свою очередь делал свое грязное дело. Ничего удивительного.
UserГость
17.06.2007 5:46:58
Ответить Ссылка
>проблема такая, в опере с кодировкой проблеммы происходят, только ромбики с вопросиками видны, может подскажете как такое лечить, и еще как сделать что бы просто мой ip не светился а все остальное передавалось
пысы: скрипт стоит на дедике

Ip светится хостинговский. Хотя при желании фсб Вас легко найдет по логам апача на хостинге.

Опера - хз, что там. Надо смотреть.
UserГость
13.07.2007 19:25:23
Ответить Ссылка
Добрый день.
Подскажите, как быть с апачевской авторизацией?
Вроде, в proxomitron заполняю всё по образцу:
Authorization: Example password entry (out) (выделяю чекбокс out)
URL Match - адрес сайта
Header value match - пусто
Replacement text - Basic dGVzdDp0ZXN0

Но не работает. :(
UserГость
05.09.2007 2:09:01
Ответить Ссылка
отличный скрипт - у меня работат на 100% зжимает наура - АВТОРУ РЕСПЕКТ!!! - (ПС какраз проверю как пойдут пост данные :))
UserГость
05.09.2007 2:37:39
Ответить Ссылка
Почитал тут вашы коментарии - и офигел. Все просто скрипт не пашет на рамблере потому что автор намутил с параметрами. когда идет запрос оригинальный типа http://rambler.ru?param1=111¶m2=222¶m3=333 то получается http://myproxy.ru?myzip.php?urlx=http://rambler.ru?param1=111¶m2=222¶m3=333 и как вы уже успели догадаться что все параметры после первого обрезаются и идут не в rambler.ru а в myproxy.ru?myzip.php. Короче выход такой нужно сделать чтобы в скрипт шло типа http://rambler.ruxxxparam1yyy111¶m2yyy222zzzparam3yyy333 - короче все слепить и придумать свой разделитель. Впринцыпе ето нужно реализовать в проксомитронеа в скрипте там уже просто explode сделать. Есть у кого идеи?
UserГость
15.09.2007 10:24:12
Ответить Ссылка
интересно установил без ПРОКСИ. По схеме должно сжимать на вебсервере и броузер видимо читает gzip файлы.Не все адреса коректно работают. Но те что возвращаются в броузер отматывают ещё больше трафика чем просто если загрузить страницу.Смотрено на окне состояния.В логах пишется что экономнее.А наяву наоборот.Такое впечатление что CURL до сжатия тоже отматывает у броузера трафик и потом ещё отматывает выдавая сжатый
UserГость
09.10.2007 14:19:18
Ответить Ссылка
Попробовал данный скрипт и у меня получились совсем неожиданные результаты... Трафик с помощью этой приблуды УВЕЛИЧИВАЛСЯ почти в 2 раза. Если чисто по адсл страница весила 15 килобайт, то через проксимитрон и этот скрипт все 30. У меня адсл , kis, opera 9.23, в интернет эксплорере теже показатели. Сам скрипт изначально не работал, исправил только в проксометроне url на urlx после этого заработало. Может кто встречался с такой проблемой? max960@tut.by
UserГость
19.10.2007 12:16:33
Ответить Ссылка
Уже год пользую.
И знакомых подсадил тех что на ЖПРСе очень довольны.
UserГость
20.10.2007 21:00:23
Ответить Ссылка
Попробывал на денвере.
Запускал как myzip.php?urlx=http://mail.ru.
Получил в ответ
Fatal error: Call to undefined function: curl_init() in s:\home\php\www\tr\myzip.php on line 49
Строка 49 -- $ch = curl_init();
Внутри скобок нечего не должно быть?
Этот скрипт точно рабочий?
UserDemonSKED
12.11.2007 3:28:46
Ответить Ссылка
Тажа беда. Просто на сервере отключены сокеты и цурл. Я вот смог на сервак в нашей сети залить шелл и скрипты потом туда, а вот как включить в пхп цурл и сокеты не знаю. Поможет кто нибудь. Сервак на фре 4,3
UserГость
02.12.2007 20:47:12
Ответить Ссылка
Мне кажется увеличиваться трафик может только когда страница насыщена gif и jpg файлами. Как известно после сжатия эти файлы только увеличиваются в размерах.
UserГость
03.12.2007 19:09:14
Ответить Ссылка
А к этому скрипту кто-то может дописать обрезатель flasha ?
UserГость
14.12.2007 14:27:01
Ответить Ссылка
PHP Warning: Call-time pass-by-reference has been deprecated; If you would like to pass it by reference, modify the declaration of [runtime function name](). If you would like to enable call-time pass-by-reference, you can set allow_call_time_pass_reference to true in your INI file. in /home/944/www/zip/myzip.php on line 87
[Fri Dec 14 14:06:30 2007] [error] PHP Fatal error: Call to undefined function curl_init() in /home/944/www/zip/myzip.php on line 49

Помогите разобраться что за ошибка и можно ли исправить?
UserГость
14.12.2007 14:28:45
Ответить Ссылка
забыл ящик свой дать по проблеме PHP Warning: Call-time pass-by-reference ...

grim(собака)bk.ru
UserГость
11.01.2008 16:50:51
Ответить Ссылка
1. Что-то не догоняю по Proxomitron: если браузер настроен на localhost, то как Proxomitron подключается к инету если я использую LAN-соединение?
2. Если работаю напрямую со скриптом - станица грузится, но ниодной картинки нет.
В чем подвох?
UserГость
13.01.2008 18:47:23
Ответить Ссылка
Помогите разобраться. У меня хостинг все поддерживает, но почемуто не работает. Выдает ошибки 33, 34, 35, 85, 110, 111, 112 а потом абракадабру и опять ошибки. В чем дело?
UserГость
14.01.2008 18:59:06
Ответить Ссылка
Не работает тоже! Выводит море ошибок Warning: Cannot modify header information - headers already sent by
Также море ошибок с октрытием, закрытием файлов.
Автор, давай помогай :)
UserГость
14.01.2008 19:28:44
Ответить Ссылка
А можно использовать прокси для мобил, в частности jimm если там прописать этот прокси?
UserГость
15.01.2008 1:36:31
Ответить Ссылка
создайте эти файлы count.log log.log
UserГость
16.01.2008 3:30:45
Ответить Ссылка
Пробую данную схему несколько часов. Результат - mail.ru открыть точно не получается, яндекс считает что я из др. города (значит в нете через хостинг). Работает, но коряво...
UserГость
25.02.2008 12:28:42
Ответить Ссылка
Не работает тоже! Выводит море ошибок Warning: Cannot modify header information - headers already sent by
Также море ошибок с октрытием, закрытием файлов.
Автор, давай помогай :)
------------------------------------------
Проблема решилась созданием файлов count.log log.log и pageFull.log там же где лежат сами php скрипты, права на файлы надо установить 777.
UserГость
13.03.2008 1:33:06
Ответить Ссылка
Автор сказал, что на бесплатном хостинге не прокатит?! Прокатит... Только надо хорошо поискать... И ошибки почему-то пропадают (на mail.ru) Только вот не хватает функции сжатия картинок, как в туннеле
UserГость
21.03.2008 18:32:58
Ответить Ссылка
Люди, или автор !!! Давайте сделаем, чтобы картинки сжимались !!! В скрипте выводится: print $ret_data; может сначала зажать это, например imagejpeg Я пробовал написать, не получается! Может у кого получится?!
UserГость
22.03.2008 14:28:30
Ответить Ссылка
попробовал залить скрипты на холм(holm.ru)
создал файлики log один хрен ничего неполучаеться, пишет HTTP-header error /olen/ !
хостер падла догружает рекламу ко мне на страницу может из-за этого?
автор напиши статью прямо в обсуждении здесь более подробную плз
UserГость
23.03.2008 13:45:59
Ответить Ссылка
Работает, но не везде..
В частности, авторизация на мэиле, вконтакте; также не поддерживает много редиректов.
Пост данные тоже непонятно как.
Люди, если у кого-нибудь уже есть исправленный скрипт без ошибок или идеи по исправлению, поделитесь, плиз...
UserГость
09.04.2008 14:16:21
Ответить Ссылка
пашет скрипт!мало того я даже два хоста халявных под него нашёл!
UserГость
23.04.2008 13:03:40
Ответить Ссылка
я тож через халявный запустил! кайф, спасибо огромное!
UserГость
02.05.2008 23:55:43
Ответить Ссылка
Ну а где сам скрипт?
UserГость
23.07.2008 9:39:10
Ответить Ссылка
Люди, подскажите на каких халявных хостингам можно этот скрипток заюзать
UserГость
01.08.2008 12:34:08
Ответить Ссылка
В связке с http://www.freeware.ru/program_prog_id_15086.html этот метод работает на ура!
UserГость
05.10.2008 4:06:32
Ответить Ссылка
Спасибо. Все классно работает
UserГость
29.01.2009 7:07:13
Ответить Ссылка
так а как проверить работу curl на сервере?
UserГость
02.02.2009 10:16:34
Ответить Ссылка
работу CURL можно косвенно проверить через
удачи!
UserГость
25.03.2009 11:28:32
Ответить Ссылка
Скрипт работает отлично и очень быстро на моём VDS
я ещё оптимизировал этот скрипт, теперь он сжимает и картинки на сайтах!!!
могу посоветовать шустрый и дешовый VDS сервер для этого скрипта.
обращайтесь ICQ 366634443
UserГость
23.09.2009 17:56:26
Ответить Ссылка
все это бесполезно если провайдер берет за исходный объем данных.поэтому надо сравнивать состояние счета до и после работы
UserГость
01.10.2009 7:15:25
Ответить Ссылка
Народ а есть скрипт в добаваок чтоб еще картинки сжимал
UserГость
03.11.2009 9:14:31
Ответить Ссылка
Скажите пожалуйста, чей IP адрес видит site.com: webzip.com или компьютера, посылающего запрос.
Тут как-то немножко намекается на анонимность, но явно не сказано. В моём случае нужно, чтобы анонимности не было, а сжатие было. Возможен ли такой вариант?
UserГость
20.11.2009 11:54:53
Ответить Ссылка
А мне наоборот надо чтобы анонимность была, сможет кто-то по передаваемым заголовкам узнать откуда пришел запрос на самом деле или увидет только адрес хостинга где установлен скрипт?
UserГость
13.09.2010 22:58:44
Ответить Ссылка
Всем привет, вопрос автору, в скрипт можно добавить возможность работы через HTTP_PROXY?




Keywords: zPOSTz zSOFTz, zHOWz, zNETz, zFREEz, zINFOz z34518z
Для Авторов: edit Lock delete Lock



    Rambler's Top100