Могу ли я создать браузер на сайте?

У меня есть несколько веб-сайтов и я занимаюсь веб-разработкой. Однако я пытаюсь создать метод, с помощью которого я могу создать веб-страницу на моем сервере, чтобы я мог просматривать другие веб-сайты. Для этого есть несколько причин - скрытие моего IP, безопасность, обход брандмауэров и так далее.

Я не могу использовать iFrame, потому что контент все еще загружается на локальное устройство. То, что я хочу, - это решение, которое загружает веб-сайт на сервер, отображает его и отображает на моей веб-странице, поэтому весь контент подается непосредственно с моего сервера. Это было бы похоже на браузер внутри веб-страницы.

Может кто-нибудь помочь мне, как это можно сделать? Я могу сделать немного базового веб-кодирования, которое может помочь, мне не нужно, чтобы оно было модным, просто что-то простое и простое.

2 ответа

Решение

Мне удалось это отсортировать... иш. Это грубо, но это работает, хотя иногда страница доставляется в виде простого текста. Хотя для моих целей это не проблема.

Вот мое решение, использующее PHP-функцию file_get_contents в двухстраничном процессе.

Содержание index.php:

<body>

<h1>browser</h1>
/* gets the data from a URL */

?>


<form action="/webb/browse.php" method="post">
url: <input type="text" name="url"><br>
<input type="submit">
</form>

Welcome <?php echo $_POST["url"]; ?><br>

</body>

Содержимое browse.php

<body>

<h1>browser</h1>
/* gets the data from a URL */

?>

<form action="/webb/browse.php" method="post">
url: <input type="text" name="url"><br>
<input type="submit">
</form>

url - https://<?php echo $_POST["url"]; ?><br>

<?php

$url = $_POST["url"];
$homepage = file_get_contents('h'.$url);
echo $homepage;

?>

</body>

Если кто-то хочет уточнить это, они приветствуются, но это работает для меня!

Если у вас есть административный доступ к серверу, HTTP-ретранслятор будет делать то, что вы хотите.

Вы можете использовать Socat

socat TCP4-LISTEN: www TCP4: www.domain.org: www

устанавливает простой перенаправитель TCP-порта. С TCP4-LISTEN он прослушивает локальный порт "www" до тех пор, пока не будет установлено соединение, примет его, затем подключится к удаленному хосту (TCP4) и начнет передачу данных. Он не примет второе соединение.

socat -d -d -lmlocal2 \ TCP4-LISTEN: 80, bind = myaddr1, su = никто,fork,range=10.0.0.0/8,reuseaddr \ TCP4:www.domain.org:80,bind=myaddr2

Переадресация TCP-портов, каждая сторона связана с другим локальным IP-адресом (bind). Этот пример обрабатывает почти произвольное количество параллельных или последовательных соединений, форкая новый процесс после каждого accept() . Это обеспечивает небольшую безопасность, позволяя никому не поддаваться после разветвления; он разрешает соединения только из частной сети 10 (диапазон); из-за reuseaddr, он позволяет немедленный перезапуск после завершения главного процесса, даже если некоторые дочерние сокеты не полностью закрыты. С -lmlocal2 socat регистрирует в stderr, пока не достигнет цикла приема. Дальнейшее ведение журнала направляется в системный журнал с помощью средства local2.

Смотрите также

https://stackoverflow.com/questions/34791674/socat-port-forwarding-for-https

Другие вопросы по тегам