php:链接预览或url预览不起作用

时间:2018-12-18 22:09:06

标签: php ubuntu file-get-contents firewall

使用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'];
                    }
                }
            }
        }

0 个答案:

没有答案