作者 刘锟

update

@@ -4,7 +4,6 @@ namespace App\Console\Commands\Test; @@ -4,7 +4,6 @@ namespace App\Console\Commands\Test;
4 4
5 use App\Helper\Arr; 5 use App\Helper\Arr;
6 use App\Models\Com\Notify; 6 use App\Models\Com\Notify;
7 -use App\Models\Devops\ServerConfig;  
8 use App\Models\Devops\ServersIp; 7 use App\Models\Devops\ServersIp;
9 use App\Models\Domain\DomainInfo; 8 use App\Models\Domain\DomainInfo;
10 use App\Models\Product\Keyword; 9 use App\Models\Product\Keyword;
@@ -34,7 +33,7 @@ class Temp extends Command @@ -34,7 +33,7 @@ class Temp extends Command
34 33
35 public function handle() 34 public function handle()
36 { 35 {
37 - 36 + $this->create_all_amp_notify();
38 } 37 }
39 38
40 /** 39 /**
@@ -433,6 +432,16 @@ class Temp extends Command @@ -433,6 +432,16 @@ class Temp extends Command
433 $project_id = $domain_info->project_id; 432 $project_id = $domain_info->project_id;
434 $domain = $domain_info->domain; 433 $domain = $domain_info->domain;
435 434
  435 + $domain_array = parse_url($domain);
  436 + $host = $domain_array['host'] ?? $domain_array['path'];
  437 + $host_array = explode('.', $host);
  438 + if (count($host_array) <= 2) {
  439 + array_unshift($host_array, 'm');
  440 + } else {
  441 + $host_array[0] = 'm';
  442 + }
  443 + $amp_domain = implode('.', $host_array);
  444 +
436 $this->output('项目id:' . $project_id . ',start'); 445 $this->output('项目id:' . $project_id . ',start');
437 446
438 //获取项目所在服务器 447 //获取项目所在服务器
@@ -441,54 +450,32 @@ class Temp extends Command @@ -441,54 +450,32 @@ class Temp extends Command
441 $this->output('未查询到项目数据'); 450 $this->output('未查询到项目数据');
442 continue; 451 continue;
443 } 452 }
444 - $serve_ip_info = $serve_ip_model->read(['id' => $project_info['serve_id']], ['servers_id']); 453 + $serve_ip_info = $serve_ip_model->read(['id' => $project_info['serve_id']], ['servers_id', 'domain', 'ip']);
445 if (!$serve_ip_info) { 454 if (!$serve_ip_info) {
446 $this->output('未查询到服务器数据'); 455 $this->output('未查询到服务器数据');
447 continue; 456 continue;
448 } 457 }
449 - $servers_id = $serve_ip_info['servers_id'];  
450 -  
451 - if ($servers_id == ServerConfig::SELF_SITE_ID) {  
452 - //自建站服务器:如果项目已经上线,不请求C端接口,数据直接入库  
453 - //判断是否已有更新进行中  
454 - $data = [  
455 - 'project_id' => $project_id,  
456 - 'type' => 3,  
457 - 'route' => 1,  
458 - 'server_id' => ServerConfig::SELF_SITE_ID,  
459 - 'status' => ['!=', Notify::STATUS_FINISH_SITEMAP]  
460 - ];  
461 - $notify = $notify_model->read($data, ['id']);  
462 -  
463 - if (!$notify) {  
464 - $domain_array = parse_url($domain);  
465 - $host = $domain_array['host'] ?? $domain_array['path'];  
466 - $host_array = explode('.', $host);  
467 - if (count($host_array) <= 2) {  
468 - array_unshift($host_array, 'm');  
469 - } else {  
470 - $host_array[0] = 'm';  
471 - }  
472 - $domain = implode('.', $host_array); 458 + if (!check_domain_record($amp_domain, $serve_ip_info)) {
  459 + $this->output('未解析到目标服务器');
  460 + continue;
  461 + }
473 462
474 - $data['data'] = Arr::a2s(['domain' => $domain, 'url' => [], 'language' => []]);  
475 - $data['status'] = Notify::STATUS_INIT;  
476 - $notify_model->add($data);  
477 - }  
478 - } else {  
479 - //其他服务器:请求对应C端接口  
480 - $c_url = 'https://' . $domain . '/api/update_page/';  
481 - $c_params = [  
482 - 'project_id' => $project_id,  
483 - 'type' => 3  
484 - ];  
485 - $re = http_post($c_url, json_encode($c_params), [], true);  
486 - if (isset($re['status']) && $re['status'] == 200) {  
487 - $this->output($c_url . ' | 请求成功');  
488 - } else {  
489 - $this->output($c_url . ' | ' . ($re['message'] ?? '未返回失败原因'));  
490 - } 463 + //判断是否已有更新进行中
  464 + $data = [
  465 + 'project_id' => $project_id,
  466 + 'type' => 3,
  467 + 'route' => 1,
  468 + 'server_id' => $serve_ip_info['servers_id'],
  469 + 'status' => ['!=', Notify::STATUS_FINISH_SITEMAP]
  470 + ];
  471 + $notify = $notify_model->read($data, ['id']);
  472 +
  473 + if (!$notify) {
  474 + $data['data'] = Arr::a2s(['domain' => $amp_domain, 'url' => [], 'language' => []]);
  475 + $data['status'] = Notify::STATUS_INIT;
  476 + $notify_model->add($data);
491 } 477 }
  478 +
492 $this->output('项目id:' . $project_id . ',end'); 479 $this->output('项目id:' . $project_id . ',end');
493 } 480 }
494 } 481 }