getURlHTML($url,$uri); //菜单 $siteMenu = SiteMenu::showAllSelectOptions(); // return view('distributor.pages-custom.visual-editor',['html'=>$html,'siteMenu'=>json_encode($siteMenu),'mid'=>$mid]); } private function getURlHTML($url,$uri) { //echo $url;exit; $siteUrl = $url . $uri; $ch = curl_init($siteUrl); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 返回原生的(Raw)输出 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 跳过证书检查(在生产环境中,应将其设置为true并指定CA证书路径) curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); // 跳过证书主机名验证 $html = curl_exec($ch); if (curl_errno($ch)) { echo 'cURL error: ' . curl_error($ch); } curl_close($ch); $pattern = '/<(link|script|img)[^>]*\s+(href|src)=["\'](\/[^"\']+)["\'][^>]*>/i'; $replacement = function($matches) use ($url) { // $matches[3] 是匹配到的以 / 开头的路径 return str_replace($matches[3], $url . $matches[3], $matches[0]); }; $html = preg_replace_callback($pattern, $replacement, $html); return $html; } }