PHP + cURL获取不应该存在的文件

时间:2019-12-12 07:30:17

标签: php curl

这是我的第一个问题,我不会问我是否还没有尝试过所有可能的方法。我的问题如下:

我的任务是在公司中维护一个旧的Web应用程序,其中一部分是将html文件中的旧日期更改为当年。我做到了,当我直接使用所需参数访问文件时,它就可以工作。现在,应用程序本身并不直接访问此文件,而是通过它们称为“ proxy.php”的文件将其加载-它定义了允许的主机和其他内容,但它主要要做的是通过cURL获取数据。如果我通过“ proxy.php”访问更改的文件,它将返回服务器上任何地方都不应该存在的文件(其中包含旧内容)。

我在下面复制了proxy.php的功能,结果相同(提供了一个旧文件):

<?php 
//phpinfo();
//Proxy.php test because weird things are happening...
$url = $_GET["url"]; //The url that it gets is escaped already.

$ch = curl_init();
curl_setopt($ch, CURLOPT_HTTPGET,1);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,  2);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,TRUE);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($ch, CURLOPT_TIMEOUT, 15);

$xml = curl_exec ($ch);


echo $xml;

?>

我还从一位同事那里得知,他们总是只更改html文件中的日期,并且一直有效到现在。我希望我提供了有关我的问题的足够信息。预先谢谢你。

1 个答案:

答案 0 :(得分:2)

只想快速更新一下,因为我已经解决了这个问题。

配置的深处是一台旧的代理服务器,似乎正在提供缓存的文件。

我将“ proxy.php”更改为使用新的代理服务器:

$proxy = "your.proxy.server:port";
curl_setopt($ch, CURLOPT_PROXY, $proxy);

感谢大家的建议:)