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

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

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

2 ответа2

0

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

Вот мое решение, использующее 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>

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

0

Если у вас есть административный доступ к серверу, 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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .