merhaba scriptimde döviz kurlarının çekildiği bir sistem mevcut ama hata vermeye başladı durup dururken ve 500 hatası alıp sisteme erişim sağlayamıyorum tek dosya bu var döviz ile alakalı ama sorunun ne olduğunu anlayamadım yardımcı olabilirmisiniz.

<?php

if(!empty($_GET["kur"])):
    $_SESSION["kur"] = $_GET["kur"];
endif;    
 
if(!$_SESSION["kur"]):
     $_SESSION["kur"] = "TRY";
endif;    

function Altinkaynak($deger){
    try{
         // $client = new SoapClient('http://data.altinkaynak.com/DataService.asmx?WSDL');
        $client = new SoapClient('http://data.altinkaynak.com/DataService.asmx?WSDL', array('connection_timeout'=> 5));
        $auth = new stdClass();
        $auth->Username = 'AltinkaynakWebServis';
        $auth->Password = 'AltinkaynakWebServis';
        $header = new SoapHeader('http://data.altinkaynak.com/', 'AuthHeader', $auth, false);
        $client->__setSoapHeaders($header);
        // altın kurları
        $response = $client->GetCurrency();
        $xml = simplexml_load_string($response->GetCurrencyResult);
        //dolar kurları
        $golden = $client->getGold();
        $goldenxml = simplexml_load_string($golden->GetGoldResult);
            return $euro = $xml->Kur[$deger]->Satis;
    }catch (Exception $e) {  
        // echo "Soap Hatasi Olustu: " . $e->getMessage();
    }
}

function CanliDoviz($deger){
    $jsonVeri = file_get_contents("https://canlidoviz.com/doviz-kurlari.jsonld",true);

    $veri = json_decode($jsonVeri,1);
    $response = $veri["mainEntity"]["itemListElement"]; //doviz listesi
    $birim = $response[$deger]["currency"];
    $result = $response[$deger]["currentExchangeRate"]["price"]; //fiyatı alıyoruz
    
    return  $result;
     // $deger =  0 dolar 1 euro
}

function TCMBDoviz($deger, $alis = null){
        $veri = simplexml_load_file('http://www.tcmb.gov.tr/kurlar/today.xml');
 
    $icerik =  $veri->Currency;
    $name = $icerik->Isim;
    $KurKodu = $icerik->attributes();
        $ForexAlis = $icerik[$deger]->ForexBuying; // Forex Alış
        $ForexSatis = $icerik[$deger]->ForexSelling; // Forex Satış
        $BankaAlis = $icerik[$deger]->BanknoteBuying; // Banka Alış
        $BankaSatis = $icerik[$deger]->BanknoteSelling; // Banka Satış
    if($alis == ""){
        return $BankaSatis;
    }elseif($alis == "satis"){
        return $BankaSatis;
    }elseif($alis == "alis"){
        return $BankaAlis;
    }
}
function TruncGil($key,$alis){
    $jsonVeri = file_get_contents("https://finans.truncgil.com/today.json",true);
    $veri = json_decode($jsonVeri,1);
    $birim = [
        'USD' => 'ABD DOLARI',
        'EUR' => 'EURO',
    ];  
    return    $veri[$birim[$key]][$alis];
}


 if ( time() > $_SESSION['doviz_cooldown'] ):
    unset($_SESSION['dolar']);
    unset($_SESSION['euro']);
    unset($_SESSION['doviz_cooldown']);
    
    if(CanliDoviz(0) != ""):
        $dolar    = round(CanliDoviz(0), 2);
        $euro    = round(CanliDoviz(1), 2);
    elseif(Altinkaynak(0) != ""):
        $dolar    =  round(Altinkaynak(0), 2);
        $euro    =  round(Altinkaynak(1), 2);
    elseif(TCMBDoviz(0) != ""):
        $dolar    = round(TCMBDoviz(0), 2);
        $euro    = round(TCMBDoviz(3), 2);
    elseif(TruncGil("USD","Alış") != "" ):
        $dolar    = round(TruncGil("USD","Satış"), 2);
        $euro    = round(TruncGil("EUR","Satış"), 2);
    endif;  

    $_SESSION['doviz_cooldown'] = time() + 900;
    $_SESSION['dolar'] = $dolar;
    $_SESSION['euro'] = $euro;
 else:
    $dolar = $_SESSION['dolar'];
    $euro = $_SESSION['euro'];
 endif;
 
 function kur($value,$value2){
     if($value2 == "EUR"):
         return $value." EUR";
     elseif($value2 == "USD"):
         return "$".$value;
     elseif($value2 == "TRY"):
         return $value." TL";
     endif;    
 }