|
...
|
...
|
@@ -2,6 +2,8 @@ |
|
|
|
|
|
|
|
namespace App\Http\Logic\Aside\Project;
|
|
|
|
|
|
|
|
use App\Enums\Common\Code;
|
|
|
|
use App\Exceptions\AsideGlobalException;
|
|
|
|
use App\Models\Com\NoticeLog;
|
|
|
|
use App\Models\Devops\ServerConfig;
|
|
|
|
use App\Models\Project\ProjectRenew;
|
|
...
|
...
|
@@ -36,6 +38,7 @@ use Illuminate\Support\Facades\DB; |
|
|
|
use Illuminate\Support\Facades\Log;
|
|
|
|
use Illuminate\Support\Facades\Schema;
|
|
|
|
use Illuminate\Support\Str;
|
|
|
|
use App\Http\Logic\Aside\Domain\DomainInfoLogic;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Class ProjectLogic
|
|
...
|
...
|
@@ -130,6 +133,9 @@ class ProjectLogic extends BaseLogic |
|
|
|
$this->createSite($this->param);
|
|
|
|
}
|
|
|
|
DB::commit();
|
|
|
|
}catch (AsideGlobalException $e){
|
|
|
|
DB::rollBack();
|
|
|
|
$this->fail($e->getMessage());
|
|
|
|
}catch (\Exception $e){
|
|
|
|
DB::rollBack();
|
|
|
|
$this->fail('请填写完整后再提交');
|
|
...
|
...
|
@@ -505,18 +511,24 @@ class ProjectLogic extends BaseLogic |
|
|
|
/**
|
|
|
|
* 创建站点
|
|
|
|
* @param $param
|
|
|
|
* @throws AsideGlobalException
|
|
|
|
* @author Akun
|
|
|
|
* @date 2023/10/17 10:04
|
|
|
|
*/
|
|
|
|
public function createSite($param){
|
|
|
|
if(isset($param['serve_id']) && $param['serve_id'] && isset($param['deploy_optimize']['domain']) && $param['deploy_optimize']['domain']){
|
|
|
|
$server_model = new ServerConfig();
|
|
|
|
$server_info = $server_model->read(['id'=>$param['serve_id']],'init_domain');
|
|
|
|
$server_info = $server_model->read(['id'=>$param['serve_id']],['init_domain','host']);
|
|
|
|
|
|
|
|
$domain_model = new DomainInfo();
|
|
|
|
$domain_info = $domain_model->read(['id'=>$param['deploy_optimize']['domain']],'domain');
|
|
|
|
|
|
|
|
if($server_info && $domain_info){
|
|
|
|
|
|
|
|
//验证解析
|
|
|
|
if (!DomainInfoLogic::instance()->check_cname($domain_info['domain'], $server_info)) {
|
|
|
|
throw new AsideGlobalException(Code::SYSTEM_ERROR,'域名' . $domain_info['domain'] . '未解析至目标服务器');
|
|
|
|
}
|
|
|
|
$api_url = 'http://'.$server_info['init_domain'].'/api/createSite';
|
|
|
|
$api_param = ['domain'=>$domain_info['domain']];
|
|
|
|
try {
|
...
|
...
|
|