使用ubuntu服务器,18.04,php 7.2。 php.ini 包含allow_url_fopen= on
。禁用防火墙无效。我还尝试搜索了6个小时,现在应用了一些随机答案,但没有用。
到目前为止,这是我的代码:
if (preg_match('@(?<=^|(?<=[^a-zA-Z0-9-_\.//]))((https?://)?([-\w]+\.[-\w\.]+)+\w(:\d+)?(/([-\w/_\.\,]*(\?\S+)?)?)*)@', htmlspecialchars_decode(stripslashes($urlData)), $results)) {
$page = $results[0];
$page = $this->addScheme($page);
// $default_socket_timeout = ini_get('default_socket_timeout');
// ini_set('default_socket_timeout', 3);
$content = file_get_contents("https://api.urlmeta.org/?url=".$page);
// ini_set('default_socket_timeout', $default_socket_timeout);
if ($content) {
$data = json_decode($content, true);
$urlResult = $data['result'];
$urlResponse = $data['meta'];
if ($urlResult['status'] === "OK") {
$urlLink = $page;
if (isset($urlResponse['image'])) {
$urlImage = $urlResponse['image'];
}
if (isset($urlResponse['description'])) {
$urlDescription = $urlResponse['description'];
}
if (isset($urlResponse['title'])) {
$urlTitle = $urlResponse['title'];
}
}
}
}