我需要一些帮助。使用这个curl函数创建一个简单的代理服务器。
$ch = curl_init($IP);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Host: $HOSTNAME'));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
echo curl_exec($ch);
它可以重定向到另一个服务器,但它确实更改了链接,比如以图像为目标,我需要添加什么功能?非常感谢。
我想你的意思是,如果最后一个链接有img,那么它不会改变"src"属性内的url。这在旋度中是不可能的。您需要做的是解析html并手动更改链接,以便从代理服务器进行定向。
同样,为了创建代理服务器,您不使用主机。您应该使用curl获取内容并将其打印出来。你正在做的是重定向而不是代理
编辑
代理的示例代码
<?php
$host = "1.1.1.1"; //This is the host
$url = $host.$_SERVER['REQUEST_URI'];
echo file_get_contents($url);
var_dump($http_response_header); //For debugging
?>
因为您只发出http请求,所以我认为file_get_contents是一个更适合的函数。var_dump还会为您提供来自"1.1.1.1"ip的响应标头。现在请注意。看看内容类型。这对图像很重要。因为浏览器需要知道响应的内容类型。因此,您需要解析http_response_headers,然后检查内容类型,并相应地使用header()函数在响应中添加标头。
希望这能帮助你更好地