|
5 | 5 | use Chamilo\CourseBundle\Entity\CForumPost; |
6 | 6 | use Chamilo\CourseBundle\Entity\CForumThread; |
7 | 7 | use ChamiloSession as Session; |
| 8 | +use GuzzleHttp\Client; |
8 | 9 | use Zend\Feed\Reader\Entry\Rss; |
9 | 10 | use Zend\Feed\Reader\Reader; |
10 | 11 |
|
@@ -2093,21 +2094,25 @@ public static function readContentWithOpenGraph(string $link): string |
2093 | 2094 | */ |
2094 | 2095 | public static function verifyUrl(string $uri): bool |
2095 | 2096 | { |
2096 | | - $curl = curl_init($uri); |
2097 | | - curl_setopt($curl, CURLOPT_FAILONERROR, true); |
2098 | | - curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true); |
2099 | | - curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); |
2100 | | - curl_setopt($curl, CURLOPT_TIMEOUT, 15); |
2101 | | - curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); |
2102 | | - curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); |
2103 | | - curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); |
2104 | | - $response = curl_exec($curl); |
2105 | | - curl_close($curl); |
2106 | | - if (!empty($response)) { |
| 2097 | + $client = new Client(); |
| 2098 | + |
| 2099 | + try { |
| 2100 | + $response = $client->request('GET', $uri, [ |
| 2101 | + 'timeout' => 15, |
| 2102 | + 'verify' => false, |
| 2103 | + 'headers' => [ |
| 2104 | + 'User-Agent' => $_SERVER['HTTP_USER_AGENT'] |
| 2105 | + ] |
| 2106 | + ]); |
| 2107 | + |
| 2108 | + if (200 !== $response->getStatusCode()) { |
| 2109 | + return false; |
| 2110 | + } |
| 2111 | + |
2107 | 2112 | return true; |
| 2113 | + } catch (Exception $e) { |
| 2114 | + return false; |
2108 | 2115 | } |
2109 | | - |
2110 | | - return false; |
2111 | 2116 | } |
2112 | 2117 |
|
2113 | 2118 | /** |
|
0 commit comments