作者 刘锟

合并分支 'akun' 到 'master'

Akun



查看合并请求 !176
@@ -350,67 +350,15 @@ class HtmlCollect extends Command @@ -350,67 +350,15 @@ class HtmlCollect extends Command
350 if ($js_css_source) { 350 if ($js_css_source) {
351 foreach ($js_css_source as $vjs) { 351 foreach ($js_css_source as $vjs) {
352 $vjs_down = str_replace('"', '', $vjs); 352 $vjs_down = str_replace('"', '', $vjs);
353 - $vjs_down_arr = parse_url($vjs_down);  
354 - $vjs_down_host = $vjs_down_arr['host'] ?? '';  
355 -  
356 - $cos = config('filesystems.disks.cos');  
357 - $cosCdn = $cos['cdn'];  
358 -  
359 - if ($vjs_down_host == $cosCdn) {  
360 - //过滤已经下载的 353 + if(strpos($vjs_down,'data:') !== false){
  354 + //过滤二进制文件
361 continue; 355 continue;
362 } 356 }
363 -  
364 - if (empty($vjs_down_host) && substr($vjs_down, 0, 1) != '/') {  
365 - //相对路径  
366 - $url_arr = explode('/', $vs['url']);  
367 - $url_arr[count($url_arr) - 1] = $vjs_down;  
368 - $vjs_down = implode('/', $url_arr);  
369 - }  
370 -  
371 - $vjs_result = $this->url_check($vjs_down, $project_id, $domain, $web_url_domain, $home_url);  
372 - if (!$vjs_result) { 357 + if(strlen($vjs_down) > 255){
  358 + //过滤太长文件
373 continue; 359 continue;
374 } 360 }
375 361
376 - if ($vjs_result['download']) {  
377 - $new_vjs = CosService::uploadRemote($project_id, 'source', $vjs_result['url_complete']);  
378 - if ($new_vjs) {  
379 - CollectSource::insert([  
380 - 'project_id' => $project_id,  
381 - 'origin' => $vjs_result['url'],  
382 - 'target' => $new_vjs,  
383 - 'created_at' => date('Y-m-d H:i:s'),  
384 - 'updated_at' => date('Y-m-d H:i:s'),  
385 - ]);  
386 - $source_html = str_replace($vjs, getImageUrl($new_vjs), $source_html);  
387 - }  
388 - } else {  
389 - $source_html = str_replace($vjs, getImageUrl($vjs_result['url_complete']), $source_html);  
390 - }  
391 - }  
392 -  
393 - CosService::uploadRemote($project_id, 'source', $new_source, $new_source, $source_html);  
394 - }  
395 - }  
396 - }  
397 - } else {  
398 - $html = str_replace($vs['url'], getImageUrl($vs['url_complete']), $html);  
399 -  
400 - if (substr($vs['url_complete'], -3, 3) == 'css' || substr($vs['url_complete'], -2, 2) == 'js') {  
401 -  
402 - $source_html = curl_c(getImageUrl($vs['url_complete']), false);  
403 -  
404 - if (substr($vs['url_complete'], -3, 3) == 'css') {  
405 - preg_match_all("/url\(['\"]?(\s*[^>]+?)['\"]?\)/i", $source_html, $result_source);  
406 - } else {  
407 - preg_match_all("/[large|thumb]+URL:['\"]+(\s*[^>]+?)['\"]+,/i", $source_html, $result_source);  
408 - }  
409 -  
410 - $js_css_source = $result_source[1] ?? [];  
411 - if ($js_css_source) {  
412 - foreach ($js_css_source as $vjs) {  
413 - $vjs_down = str_replace('"', '', $vjs);  
414 $vjs_down_arr = parse_url($vjs_down); 362 $vjs_down_arr = parse_url($vjs_down);
415 $vjs_down_host = $vjs_down_arr['host'] ?? ''; 363 $vjs_down_host = $vjs_down_arr['host'] ?? '';
416 364
@@ -451,10 +399,13 @@ class HtmlCollect extends Command @@ -451,10 +399,13 @@ class HtmlCollect extends Command
451 } 399 }
452 } 400 }
453 401
454 - CosService::uploadRemote($project_id, 'source', $vs['url_complete'], $vs['url_complete'], $source_html); 402 + CosService::uploadRemote($project_id, 'source', $new_source, $new_source, $source_html);
455 } 403 }
456 } 404 }
457 } 405 }
  406 + } else {
  407 + $html = str_replace($vs['url'], getImageUrl($vs['url_complete']), $html);
  408 + }
458 } 409 }
459 410
460 return $html; 411 return $html;
@@ -350,67 +350,15 @@ class HtmlLanguageCollect extends Command @@ -350,67 +350,15 @@ class HtmlLanguageCollect extends Command
350 if ($js_css_source) { 350 if ($js_css_source) {
351 foreach ($js_css_source as $vjs) { 351 foreach ($js_css_source as $vjs) {
352 $vjs_down = str_replace('"', '', $vjs); 352 $vjs_down = str_replace('"', '', $vjs);
353 - $vjs_down_arr = parse_url($vjs_down);  
354 - $vjs_down_host = $vjs_down_arr['host'] ?? '';  
355 -  
356 - $cos = config('filesystems.disks.cos');  
357 - $cosCdn = $cos['cdn'];  
358 -  
359 - if ($vjs_down_host == $cosCdn) {  
360 - //过滤已经下载的 353 + if(strpos($vjs_down,'data:') !== false){
  354 + //过滤二进制文件
361 continue; 355 continue;
362 } 356 }
363 -  
364 - if (empty($vjs_down_host) && substr($vjs_down, 0, 1) != '/') {  
365 - //相对路径  
366 - $url_arr = explode('/', $vs['url']);  
367 - $url_arr[count($url_arr) - 1] = $vjs_down;  
368 - $vjs_down = implode('/', $url_arr);  
369 - }  
370 -  
371 - $vjs_result = $this->url_check($vjs_down, $project_id, $domain, $web_url_domain, $home_url);  
372 - if (!$vjs_result) { 357 + if(strlen($vjs_down) > 255){
  358 + //过滤太长文件
373 continue; 359 continue;
374 } 360 }
375 361
376 - if ($vjs_result['download']) {  
377 - $new_vjs = CosService::uploadRemote($project_id, 'source', $vjs_result['url_complete']);  
378 - if ($new_vjs) {  
379 - CollectSource::insert([  
380 - 'project_id' => $project_id,  
381 - 'origin' => $vjs_result['url'],  
382 - 'target' => $new_vjs,  
383 - 'created_at' => date('Y-m-d H:i:s'),  
384 - 'updated_at' => date('Y-m-d H:i:s'),  
385 - ]);  
386 - $source_html = str_replace($vjs, getImageUrl($new_vjs), $source_html);  
387 - }  
388 - } else {  
389 - $source_html = str_replace($vjs, getImageUrl($vjs_result['url_complete']), $source_html);  
390 - }  
391 - }  
392 -  
393 - CosService::uploadRemote($project_id, 'source', $new_source, $new_source, $source_html);  
394 - }  
395 - }  
396 - }  
397 - } else {  
398 - $html = str_replace($vs['url'], getImageUrl($vs['url_complete']), $html);  
399 -  
400 - if (substr($vs['url_complete'], -3, 3) == 'css' || substr($vs['url_complete'], -2, 2) == 'js') {  
401 -  
402 - $source_html = curl_c(getImageUrl($vs['url_complete']), false);  
403 -  
404 - if (substr($vs['url_complete'], -3, 3) == 'css') {  
405 - preg_match_all("/url\(['\"]?(\s*[^>]+?)['\"]?\)/i", $source_html, $result_source);  
406 - } else {  
407 - preg_match_all("/[large|thumb]+URL:['\"]+(\s*[^>]+?)['\"]+,/i", $source_html, $result_source);  
408 - }  
409 -  
410 - $js_css_source = $result_source[1] ?? [];  
411 - if ($js_css_source) {  
412 - foreach ($js_css_source as $vjs) {  
413 - $vjs_down = str_replace('"', '', $vjs);  
414 $vjs_down_arr = parse_url($vjs_down); 362 $vjs_down_arr = parse_url($vjs_down);
415 $vjs_down_host = $vjs_down_arr['host'] ?? ''; 363 $vjs_down_host = $vjs_down_arr['host'] ?? '';
416 364
@@ -451,10 +399,13 @@ class HtmlLanguageCollect extends Command @@ -451,10 +399,13 @@ class HtmlLanguageCollect extends Command
451 } 399 }
452 } 400 }
453 401
454 - CosService::uploadRemote($project_id, 'source', $vs['url_complete'], $vs['url_complete'], $source_html); 402 + CosService::uploadRemote($project_id, 'source', $new_source, $new_source, $source_html);
455 } 403 }
456 } 404 }
457 } 405 }
  406 + } else {
  407 + $html = str_replace($vs['url'], getImageUrl($vs['url_complete']), $html);
  408 + }
458 } 409 }
459 410
460 return $html; 411 return $html;