WEB браузер на PHP

vovike

Guest
WEB браузер на PHP

Всем привет!

Есть у меня такая мысль:
Мой провайдер предоставляет доступ по кабельному телевидению к внутригородской сети и своим серверам бесплатно, даёт место под страничку, есть поддержка PHP и т.д.
За информацию скачаную из вне берёт плату (0.1$/Mb).
Идея заключается в том, чтоб написать такой PHP код и разместить его на сервере, который бы принимал запросы от браузера и передавал их далее от своего имени, а затем возвращал принятую информацию. Что-то типа прокси с урезанными возможностями. Или браузер отображаемый в окне другого браузера. Короче, чтоб у меня был только локальный траффик.
Ни кто не встречал ни чего подобного?
Может кто заинтересуется и поможет в написании программы? Предвижу проблемы с обработкой ссылок.

Спасибо.
 

AHTIXPICT

Новичок
Гы.
После этого у тебя уже не будет ни провайдера, ни доступа к внутренней сети.

ф-ии fsock могут тебе в этом помочь
 

BOJIK

Новичок
Делал нечто подобное правда по другому поводу. Так вот проблемы были такие обработать куки и мультипарт формы. А ссылки это не самое тяжелое. Юзал fsock. C https моя прокся по понятным причинам не работала.
 

impossible

Новичок
ситуация, на работе серфконтрол блочил кучу сайтов (access denied)
не мог зайти ни на один сайт, где было слово "games" :)
сделал скрипт, который служил мне браузером...
открывал fopen() url
скачиваем страницу, чтобы работали все ссылки относительно моего хостинга, мелял все ссылки функцией eregi_replace(), чтобы грузить все рисунки, менял все <img> и ...background и др. на img.php?img_url=... этот файл, также fopen() открывал рисунок и возвращал соответствующую картинку .jpeg или .gif
так же был специальный файл, который тем же fopen() скачивал на хостинг файлы с закрытых сайтов
НЕ оптимально, но результат получил
 

[Gisma]

Новичок
а javascript + iframe не решает проблему?

-~{}~ 27.05.05 17:01:

упс, не подумал ;)

-~{}~ 27.05.05 17:03:

ну так а не проще создать папочку внутреннюю туда слить все необходимое для данной страницы, а все пути внешние автоматом меняем на локальный
 

BeGe

Вождь Апачей, блин (c)
curl решит все ваши проблемы, только надо отпрасить все линки на рисункиц css и всякую гадость - что бы они тоже шли на твой скрипт
а так
для начала browser.php?url=bla_bla_bla..... с постом возможны проблемы и больше гемора
 
Это не браузер, а web-proxy называется. На perl-е видел реализацию с поддержкой плюшек и прочей ерунды, так что думаю, если хорошо поискать, то и на PHP что-то готовое можно откопать.
 

tolyan

Новичок
Народ, поделитесь пожалуйста опытом.
Хочу написать хттп прокси, и вот что пока получилось:
cURL нормально открывает страницу, пишет ее в переменную, и потом с помощью echo отдает браузеру.
Неполучается нормально отпарсить ссылки. Приешел к выводу, что обычным str_replace тут не обойтись.
Пока вот что определил:

href="/ относительная ссылка. НАДО: href="{ProxyName}.{url}/
href=/ тоже самое, только без кавычки
href=" тоже самое, только без слэша
href=http:// абсолютная ссылка НАДО: href={ProxyName}."http://"

href="http:// абсолютная ссылка НАДО: href={ProxyName}'"'."http://"

<a href=/advanced_search?hl=ru> - это надо парсить и брать урлу в кавычки, потомучто параметр hl=ru моему скрипту передастся как параметр, а не как часть урл строки

Тут:
{ProxyName} - скрипт (http://tolyan.com/pr.php?Adr=)
{url} - требуемый скриптом хост (www.google.com/), для преобразования относительной ссылки в абсолютную.

То есть чтобы из
/grphp?hl=en&tab=wg
сделать
http://tolyan.com/pr.php?Adr=www.google.com/grphp?hl=en&tab=wg

и после этого еще и кавычки добавить вот так:

http://tolyan.com/pr.php?Adr="www.google.com/grphp?hl=en&tab=wg"

Как это все реализовать, подскажите плиз...
 

akxxiv

Новичок
Токое впечатление, что это уже обсуждалось ранее, причем в контексте идентичной проблемы. Помню что кто-то так же хотел сделать подобное и так же чтобы напарить провайдера кабельного телевидения... Или у меня дежавю...
 

tolyan

Новичок
Так то мой предыдущий пост находится именно в том топике, про кабельное телевидение и напарку провайдера.
Только вот результатов в том (читай: этом), топике пока нету =(
А нужны, однако.
 

adur

Guest
Есть готовое решение:
Хакер 09.03(57)
Статья обьектом по php.

-~{}~ 06.10.05 17:35:

Пользуйся: http://www.izone.kiev.ua/php/php/186.htm
 

tolyan

Новичок
Автор оригинала: Beat
Ето то что тебе надо: http://usfree.chat.ru/
Ох спасибо вам превеликое!
И правда что - все что можно было написать - уже написано до нас. Надо только это найти и в этом разобраться.
Да и чужой код читать - это не свой крапать, посложнее будет.
Еще раз спасибо!
 

Voffka

Guest
ftp.chg.ru/pub/sourceforge/p/ph/phpproxy/
вот то что тебе надо
 

ProSait

Новичок
А вот все URLы мнять совсем не обязательно, достаточно поменять только http://...(везде кроме сктиптов), а остальные поменяются сами если добавить тег <base href="http://реальный_урл_сайта.RU/и патчи если есть/"> между хедами. И адреса картинок менять не придется совсем.

Что касается javascript ссылок, делаем так:
<script type="text/javascript">
function correct_url(){
var PREFIX=HTTP://TVOY-SITE.RU/
var count_url=document.links.length-1;
for(var i=0; i<=count_url; i++){
ss=document.links.href;
sslenght=ss.length;
http=ss.indexOf('http://');
mailto=ss.indexOf('mailto:');
javascript=ss.indexOf('javascript:');
if(!http){
ss=ss.substring(7,sslenght);
}
if(mailto && javascript){
document.links.href=PREFIX+ss;
}
}
}
onload=function(){correct_url()}
</script> (или вроде этого)
для form делаем тоже самое.
 
Сверху