Celestial
Новичок
Доброго времени суток.
Пишу прокси на php, чтобы можно было внешние сайты открывать через мой скрипт.
Видел много примеров таких скриптов, но они слишком уж наворочены, хочется в целях обучения написать что-то свое.
Пока есть вот это:
Тут я открываю сайт яндекса и нахожу через preg_match_all все ссылки на нем.
Вопрос такой, как заменить все найденные ссылки на что-то вроде:
http://myhost.com/index.php?q=найденная ссылка.
Скорее всего это можно сделать через preg replace, но не знаю каким должен быть второй параметр.
Помогите пожалуйста решить эту проблему.
Пишу прокси на php, чтобы можно было внешние сайты открывать через мой скрипт.
Видел много примеров таких скриптов, но они слишком уж наворочены, хочется в целях обучения написать что-то свое.
Пока есть вот это:
Код:
<html>
<head>
<title>PHP Proxy</title>
</head>
<body>
<div align = "center">
<form id = "form" name = "form" method = "get" action = "/index.php">
<input name = "q" value = "http://yandex.ru" type = "text" size = "100"/>
<input type = "submit" value = "[Open]"/>
</form>
</div>
<hr>
</body>
</html>
<?php
$url = $_GET['q'];
if(isset($url))
{
$text = file_get_contents(trim($url));
preg_match_all('/href="([^"]+)"/', $text, $links);
foreach($links[1] as $key => $link)
{
echo $link."<br/>";
}
echo "<hr>";
echo $text;
}
?>
Вопрос такой, как заменить все найденные ссылки на что-то вроде:
http://myhost.com/index.php?q=найденная ссылка.
Скорее всего это можно сделать через preg replace, но не знаю каким должен быть второй параметр.
Помогите пожалуйста решить эту проблему.