Могу ли я сканировать содержимое файла с нескольких URL-адресов и распечатывать, какие существуют? - PullRequest
0 голосов
/ 02 ноября 2019

У меня есть 3 домена, один мой старый домен, домен 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 несколько раз, и она замедлялась для каждой.

...