我可以从多个URL扫描文件内容并打印存在的文件吗?

问题描述 投票:0回答:1

我有3个域,一个是我的旧域,cloudfront CDN域和新域。问题是上传的文件很多。我无法将它们全部移动到一个位置,并且它们分散,并且我无法确定哪个域位于哪个域中。是否可以扫描第一个域,如果文件存在,则回显,否则扫描下一个域,依此类推

我尝试扫描url的标头,如果它不返回任何错误,则打印它。

    $id=$_GET['id'];
    $file='https://www.url1.com/neww/'.$_GET['id'];
    $file1='https://www.url2.com/'.$_GET['id'];
    $file2='https://url3.cloudfront.net/'.$_GET['id'];
    $file_headers = @get_headers($file2);
    if(!$file_headers || $file_headers[0] != 'HTTP/1.1 404 Not Found' || $file_headers[0] != 'HTTP/1.1 301 Moved Permanently') {
        echo file_get_contents($file2);
        die();
    }
    $file_headers = @get_headers($file1);
    if(!$file_headers || $file_headers[0] != 'HTTP/1.1 404 Not Found' || $file_headers[0] != 'HTTP/1.1 301 Moved Permanently') {
        echo $file_headers[0];
        die();
    }
    $file_headers = @get_headers($file);
    if(!$file_headers || $file_headers[0] != 'HTTP/1.1 404 Not Found' || $file_headers[0] != 'HTTP/1.1 301 Moved Permanently' || $file_headers[0] != 'HTTP/1.1 302 Found') {
        echo $file_headers[0];
        die();
    }
    echo '404 - File not found';

稍后,我可以通过此URL调用文件例如:

<img src="file.php?id=img/imgname.png" >

它有时可以工作,但有时在其他错误(例如超时等)上,它会打印在错误的URL上>

而且这也减慢了我的网站的速度。单个页面不得不多次调用该URL,并且每次访问都变慢。

我有3个域,一个是我的旧域,cloudfront CDN域和新域。问题是上传的文件很多。我无法将它们全部移动到一个位置并且它们分散并且我无法告诉...

php php-7 php-7.4
1个回答
0
投票

你好anyone help吗?

© www.soinside.com 2019 - 2024. All rights reserved.