X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FUtil%2FNetwork.php;h=495510189f1a2a849f61d69ce9aacbc283750b3d;hb=9901d82fea19c86599fa431f5221eaeefcf03c04;hp=30c4798a5a985dc1db09d4545a04f73c7009d9d5;hpb=21f172c585aff8c606774a05fde1548ddff1667d;p=friendica.git diff --git a/src/Util/Network.php b/src/Util/Network.php index 30c4798a5a..495510189f 100644 --- a/src/Util/Network.php +++ b/src/Util/Network.php @@ -79,11 +79,19 @@ class Network if (in_array(parse_url($url, PHP_URL_SCHEME), ['https', 'http'])) { $options = [HttpClientOptions::VERIFY => true, HttpClientOptions::TIMEOUT => $xrd_timeout]; - $curlResult = DI::httpClient()->head($url, $options); + try { + $curlResult = DI::httpClient()->head($url, $options); + } catch (\Exception $e) { + return false; + } // Workaround for systems that can't handle a HEAD request. Don't retry on timeouts. if (!$curlResult->isSuccess() && ($curlResult->getReturnCode() >= 400) && !in_array($curlResult->getReturnCode(), [408, 504])) { - $curlResult = DI::httpClient()->get($url, HttpClientAccept::DEFAULT, $options); + try { + $curlResult = DI::httpClient()->get($url, HttpClientAccept::DEFAULT, $options); + } catch (\Exception $e) { + return false; + } } if (!$curlResult->isSuccess()) { @@ -349,7 +357,7 @@ class Network $pair = $param . '=' . str_replace(' ', '+', $value); $url = str_replace($pair, '', $url); - // Third try: Maybey the url isn't encoded at all + // Third try: Maybe the url isn't encoded at all $pair = $param . '=' . $value; $url = str_replace($pair, '', $url); @@ -632,10 +640,11 @@ class Network * @param string $url * * @return bool + * @deprecated since 2023.09, please use BaseUrl->isLocalUrl or BaseUrl->isLocalUri instead. */ public static function isLocalLink(string $url): bool { - return (strpos(Strings::normaliseLink($url), Strings::normaliseLink(DI::baseUrl())) !== false); + return DI::baseUrl()->isLocalUrl($url); } /**