import{t as c,u as d,B as H,Z as C,ab as U,x as S,a6 as O,y as F,A as M,o as s,c as x,w as u,j as W,n as w,E as V,h as m,T as Q,W as J,r as _,a as e,b as r,g as o,F as v,D as y,f as h,L as P,s as j}from"./app-DA7OTM4Q.js";/* empty css            */import{i as q,c as G}from"./app-BT68AfZ-.js";import{_ as $,c as X}from"./app-KPOC-Jly.js";import{c as Z,_ as K}from"./app-BvgRiCbM.js";import{T as Y}from"./app-BhKfnvy7.js";import{_ as ee}from"./app-OC5wWJiS.js";import{T as te}from"./app-Zes_jb7S.js";import{_ as se}from"./app-BUX99luY.js";import{_ as ie,a as ne}from"./app-DREBJ-ou.js";import{_ as oe,a as ce}from"./app-B4y665-d.js";import{s as ae}from"./app-CNEAqXZN.js";import{T as re}from"./app-Bhreb6Cm.js";import"./app-BqY8p2gl.js";import"./app-WOreqTiW.js";import"./app-BiJOSqnq.js";import"./app-45ZaIHUI.js";import"./app-DUjqI3OV.js";import"./app-D5twQdhO.js";import"./app-BotiHebp.js";import"./app-CnGe5nlE.js";import"./app-CWBL8eTX.js";function le(){q(this)}const de="/views/assets/app-H73GaCgb.png",pe="/views/assets/app-CC1hQR9U.png",me="/views/assets/app-DNdMtEj4.png",ue="/views/assets/app-DGCBhe1o.png",fe="/views/assets/app-DVlTyla1.png",he="/views/assets/app-C-u_UJF8.png",_e={__name:"CountFormat",props:{value:0},setup(i){const a=i.value;let p="";return a<=0?p="0":a<1e4?p=a.toString():a<1e8?p=a/1e4+"万":p=a/1e8+"亿",(b,l)=>c(d(p))}};var ve=function(n){return n.dt,`
.p-scrolltop.p-button {
    position: fixed !important;
    bottom: 20px;
    right: 20px;
}

.p-scrolltop-sticky.p-button {
    position: sticky !important;
    display: flex;
    margin-left: auto;
}

.p-scrolltop-enter-from {
    opacity: 0;
}

.p-scrolltop-enter-active {
    transition: opacity 0.15s;
}

.p-scrolltop.p-scrolltop-leave-to {
    opacity: 0;
}

.p-scrolltop-leave-active {
    transition: opacity 0.15s;
}
`},ye={root:function(n){var a=n.props;return["p-scrolltop",{"p-scrolltop-sticky":a.target!=="window"}]},icon:"p-scrolltop-icon"},be=H.extend({name:"scrolltop",theme:ve,classes:ye}),ge={name:"BaseScrollTop",extends:F,props:{target:{type:String,default:"window"},threshold:{type:Number,default:400},icon:{type:String,default:void 0},behavior:{type:String,default:"smooth"},buttonProps:{type:Object,default:function(){return{rounded:!0}}}},style:be,provide:function(){return{$pcScrollTop:this,$parentInstance:this}}},R={name:"ScrollTop",extends:ge,inheritAttrs:!1,scrollListener:null,container:null,data:function(){return{visible:!1}},mounted:function(){this.target==="window"?this.bindDocumentScrollListener():this.target==="parent"&&this.bindParentScrollListener()},beforeUnmount:function(){this.target==="window"?this.unbindDocumentScrollListener():this.target==="parent"&&this.unbindParentScrollListener(),this.container&&(C.clear(this.container),this.overlay=null)},methods:{onClick:function(){var n=this.target==="window"?window:this.$el.parentElement;n.scroll({top:0,behavior:this.behavior})},checkVisibility:function(n){n>this.threshold?this.visible=!0:this.visible=!1},bindParentScrollListener:function(){var n=this;this.scrollListener=function(){n.checkVisibility(n.$el.parentElement.scrollTop)},this.$el.parentElement.addEventListener("scroll",this.scrollListener)},bindDocumentScrollListener:function(){var n=this;this.scrollListener=function(){n.checkVisibility(U())},window.addEventListener("scroll",this.scrollListener)},unbindParentScrollListener:function(){this.scrollListener&&(this.$el.parentElement.removeEventListener("scroll",this.scrollListener),this.scrollListener=null)},unbindDocumentScrollListener:function(){this.scrollListener&&(window.removeEventListener("scroll",this.scrollListener),this.scrollListener=null)},onEnter:function(n){C.set("overlay",n,this.$primevue.config.zIndex.overlay)},onAfterLeave:function(n){C.clear(n)},containerRef:function(n){this.container=n?n.$el:void 0},rootPTOptions:function(){return S(this.ptmi("root"),this.ptm("button"))},iconPTOptions:function(){return S(this.ptmi("root").icon,this.ptm("button").icon)}},computed:{scrollTopAriaLabel:function(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.scrollTop:void 0}},components:{ChevronUpIcon:ae,Button:O}};function xe(i,n,a,p,b,l){var L=M("Button");return s(),x(Q,S({name:"p-scrolltop",appear:"",onEnter:l.onEnter,onAfterLeave:l.onAfterLeave},i.ptm("transition")),{default:u(function(){return[b.visible?(s(),x(L,S({key:0,ref:l.containerRef,class:i.cx("root"),onClick:l.onClick,"aria-label":l.scrollTopAriaLabel,unstyled:i.unstyled},i.buttonProps,{pt:l.rootPTOptions()}),{icon:u(function(T){return[W(i.$slots,"icon",{class:w(i.cx("icon"))},function(){return[(s(),x(V(i.icon?"span":"ChevronUpIcon"),S({class:[i.cx("icon"),i.icon,T.class]},l.iconPTOptions),null,16,["class"]))]})]}),_:3},16,["class","onClick","aria-label","unstyled","pt"])):m("",!0)]}),_:3},16,["onEnter","onAfterLeave"])}R.render=xe;const Se={__name:"TScrollTop",props:{threshold:0},setup(i){let a=i.threshold;return J.isNull(a)&&(a=0),(p,b)=>(s(),x(d(R),{threshold:d(a)},null,8,["threshold"]))}},Le={class:"block"},Te={class:"inner-block"},ke={class:"summary-box"},Ce={class:"description-box"},Pe=e("h1",{class:"text-4xl font-normal"},"CDN",-1),we=e("p",{class:"leading-7 mt-4"}," CDN是内容分发网络（Content Delivery Network）的简称，可以帮助我们将内容快速地分发到不同的区域和运营商，包括HTML页面、Javascript文件、CSS文件，及音视频文件等。 ",-1),Be=e("p",{class:"leading-7 mt-2"}," 同时，CDN也能保护我们的网站免受攻击，比如常见的CC攻击和SQL注入攻击。 ",-1),De={class:"image-box mt-6"},$e={key:0,class:"block"},Re=e("h2",{class:"text-2xl font-normal"},"最新活动",-1),ze={class:"list-none news-box flex-wrap flex gap-4 line-height-4"},Ne=["href"],Ae={class:"date-span text-sm"},Ie={key:1,class:"block"},Ee=e("h2",{class:"text-2xl font-normal"},"产品规格",-1),He={class:"plans-box flex-wrap flex line-height-4"},Ue={class:"font-normal text-lg"},Oe={class:"text-gray-600"},Fe={key:0},Me={key:1},We=e("span",{class:"text-gray-600"},"网站数",-1),Ve={class:"value"},Qe={class:"mt-3"},Je=e("span",{class:"text-gray-600"},"请求数(每天)",-1),je={class:"value"},qe={key:0},Ge={key:1},Xe={class:"mt-3"},Ze=e("span",{class:"text-gray-600"},"下行流量",-1),Ke={key:0},Ye={key:1},et={key:2},tt={class:"value"},st={key:0},it={key:1},nt={key:2},ot={key:3},ct={class:"mt-3"},at=e("span",{class:"text-gray-600"},"优惠价格",-1),rt={key:0,class:"value"},lt={key:1,class:"value"},dt={key:2,class:"value"},pt={key:0},mt={key:1},ut={key:2},ft={class:"mt-2"},ht=["href"],_t={class:"block"},vt=e("h2",{class:"text-2xl font-normal"},"产品优势",-1),yt={class:"features-box text-center grid grid-cols-3 gap-y-8"},bt={class:"feature-box"},gt={class:"font-normal text-xl"},xt={class:"text-gray-600 mt-4"},St={class:"block"},Lt=e("h2",{class:"text-2xl font-normal"},"产品功能",-1),Tt={class:"features-box text-center grid grid-cols-3 gap-y-8"},kt={class:"feature-box"},Ct={class:"font-normal text-xl"},Pt={class:"text-gray-600 mt-4"},wt={class:"block"},Bt=e("h2",{class:"text-2xl font-normal"},"应用场景",-1),Dt={class:"scenes-box"},$t={class:"content-box m-0"},Rt={class:"description-box"},zt={class:"title"},Nt={class:"mt-4"},At={class:"my-2"},It=e("i",{class:"pi pi-check"},null,-1),Et={class:"image-box"},Ht={class:"block"},Ut=e("h2",{class:"text-2xl font-normal"},"文档与工具",-1),Ot=e("div",{class:"docs-box flex flex-wrap gap-4 line-height-1 link"},[e("a",{href:"/docs",class:"card"},[e("span",null,"产品文档"),e("p",{class:"mt-2"},"查看CDN使用文档"),e("i",{class:"pi pi-arrow-right"})]),e("a",{href:"/docs/cdn/qa.html",class:"card"},[e("span",null,"常见问题"),e("p",{class:"mt-2"},"快速查看常见问题"),e("i",{class:"pi pi-arrow-right"})]),e("a",{href:"/docs",class:"card"},[e("span",null,"快速入门"),e("p",{class:"mt-2"},"快速了解CDN功能使用"),e("i",{class:"pi pi-arrow-right"})])],-1),Ft=[Ut,Ot],Mt={__name:"index",setup(i){const n=G(new le),a=n!=null&&n.plans!=null&&n.plans.length>0,p=_(null),b=_(null),l=_(null),L=_(null),T=_(null);_(null);const B=_(null),z=[{label:"最新活动",command:g,ref:p},{label:"产品规格",command:g,ref:b,visible:a},{label:"产品优势",command:g,ref:l},{label:"产品功能",command:g,ref:L},{label:"应用场景",command:g,ref:T},{label:"文档与工具",command:g,ref:B}];function g(f){f.item.ref.value.scrollIntoView({behavior:"smooth"})}function N(f){f.currentTarget.className.indexOf("shadow-4")<0&&(f.currentTarget.className+=" shadow-4")}function A(f){f.currentTarget.className=f.currentTarget.className.replace(/shadow-4/,"").trim()}const I=[{name:"节约成本",description:"支持内容压缩、WebP转换等帮您节约带宽成本",icon:"pi pi-dollar"},{name:"就近缓存",description:"根据DNS自动分配最近分发节点",icon:"pi pi-cloud"},{name:"高缓存命中率",description:"使用二级缓存大幅提升缓存命中率减少回源",icon:"pi pi-chart-line"},{name:"强大的规则引擎",description:"缓存和WAF均提供强大的规则引擎设置，满足各种需求",icon:"pi pi-align-left"},{name:"简单易用",description:"5秒盾、CC防护、HTTP/3等功能一键启用",icon:"pi pi-bolt"},{name:"灵活自由",description:"提供丰富的可定制选项",icon:"pi pi-wrench"}],E=[{name:"内容分发",description:"简单易用的内容分发系统",icon:"pi pi-cloud"},{name:"WAF",description:"自带基于规则引擎的WAF，轻松防御SQL注入等攻击",icon:"pi pi-shield"},{name:"HTTP/3",description:"一键支持基于quic的HTTP/3协议",icon:"pi pi-bolt"},{name:"5秒盾",description:"快速启用5秒盾防御模式",icon:"pi pi-clock"},{name:"CC防护",description:"有效防御常见CC攻击",icon:"pi pi-hourglass"},{name:"URL鉴权",description:"多种鉴权方法有效防盗链",icon:"pi pi-key"},{name:"页面优化",description:"支持对HTML、CSS、Javascript压缩混淆优化",icon:"pi pi-hashtag"},{name:"WebP",description:"使用WebP压缩大幅降低带宽费用",icon:"pi pi-image"},{name:"对象存储",description:"支持多个三方对象存储，如Amazon S3等",icon:"pi pi-database"},{name:"负载均衡",description:"支持TCP和UDP四层负载均衡",icon:"pi pi-send"},{name:"边缘计算",description:"使用Javascript轻松部署业务逻辑到边缘节点",icon:"pi pi-code"},{name:"IPv6",description:"全面支持IPv4和IPv6融合",icon:"pi pi-box"}],k=[{name:"静态文件加速",description:"可以为网站常见的静态文件加速，如HTML、CSS、Javascript、图片文件等。",features:[{name:"缓存命中率高",description:"有效减少回源几率，降低源站负载"},{name:"可压缩",description:"可以设置gzip、brotli等压缩，降低文件尺寸，有效减少带宽费用"},{name:"支持动态请求",description:"可以设置要排除的缓存条件，避免影响动态请求"}],image:he},{name:"音视频加速",description:"可以为音频文件提供加速服务，如.mp3、.wav、.ts等。",features:[{name:"支持分段加载",description:"支持客户端Range请求，并能分段缓存"},{name:"高并发",description:"支持并发读取常见的多个ts文件下载"}],image:ue},{name:"HTTPS安全",description:"为网站设置HTTPS后可以有效保护你的网站安全。",features:[{name:"支持多域名",description:"支持在单个网站中添加多个域名HTTPS证书"},{name:"安全",description:"使用HTTPS可有效保护你的客户同网站的通讯安全"},{name:"支持OCSP",description:"通过OCSP让TLS握手更加快速"}],image:pe},{name:"HTTP/3支持",description:"通过开通HTTP/3服务，可有效降低连接成本。",features:[{name:"性能更高",description:"相对于TCP连接，使用UDP性能更高"},{name:"更安全",description:"有效避免数据包被篡改"},{name:"低延迟",description:"相对于TCP，UDP数据包分发的更快速"}],image:me},{name:"CC防御",description:"使用CC防护功能可有效防御常见的CC攻击。",features:[{name:"设置简单",description:"一键开启，无需特别复杂的设置"},{name:"可定制化",description:"可以根据自己的需要调整相关参数"},{name:"多条件组合",description:"在WAF中可以使用多个条件组合来检测CC攻击"}],image:de},{name:"SQL/XSS注入防御",description:"可以在WAF中使用SQL和XSS注入检测规则快速防御相关攻击。",features:[{name:"语义化",description:"支持在SQL和HTML中的语义化解析，轻松化解注释、混淆等干扰因素"},{name:"高性能",description:"检测用时非常短，用户无感知"},{name:"可回溯",description:"可以在WAF日志中查看被拦截的请求信息"}],image:fe}];return(f,Wt)=>(s(),x(K,{"active-top-menu":"products",ctx:d(n)},{default:u(()=>[e("div",Le,[e("div",Te,[e("div",ke,[e("div",Ce,[r(ee,{model:[{label:"产品"},{label:"CDN"}]}),Pe,we,Be]),e("div",De,[r($,{src:d(X)},null,8,["src"])]),r(se,{class:"second-menubar",items:z})])])]),d(n).latestPosts!=null&&d(n).latestPosts.length>0?(s(),o("div",$e,[e("div",{class:"inner-block",ref_key:"newsBoxRef",ref:p},[Re,e("div",null,[e("ul",ze,[(s(!0),o(v,null,y(d(n).latestPosts,t=>(s(),o("li",null,[e("a",{href:"/portal/post?postId="+t.id,target:"_blank"},[t.category!=null&&t.category.id>0?(s(),x(Y,{key:0,label:t.category.name,severity:"info",class:"mr-1"},null,8,["label"])):m("",!0),h(" "+c(t.subject),1)],8,Ne),h(),e("span",Ae,c(t.publishedTime),1)]))),256))])])],512)])):m("",!0),d(a)?(s(),o("div",Ie,[e("div",{class:"inner-block",ref_key:"plansBoxRef",ref:b},[Ee,e("div",He,[(s(!0),o(v,null,y(d(n).plans,t=>(s(),o("div",{class:"plan-box",onMouseover:N,onMouseout:A},[e("div",Ue,[e("strong",null,c(t.name),1)]),e("div",Oe,[t.description.length>0?(s(),o("span",Fe,c(t.description),1)):(s(),o("span",Me,c(t.name),1))]),r(P),e("div",null,[We,e("div",Ve,c(t.totalServers),1)]),e("div",Qe,[Je,e("div",je,[t.dailyRequests>0?(s(),o("span",qe,[r(_e,{value:t.dailyRequests},null,8,["value"])])):(s(),o("span",Ge,"无限制"))])]),e("div",Xe,[Ze,t.trafficLimit!=null&&t.trafficLimit.dailySize!=null&&t.trafficLimit.dailySize.count>0?(s(),o("span",Ke,"(每天)")):t.trafficLimit!=null&&t.trafficLimit.monthlySize!=null&&t.trafficLimit.monthlySize.count>0?(s(),o("span",Ye,"(每月)")):t.trafficLimit!=null&&t.trafficLimit.totalSize!=null&&t.trafficLimit.totalSize.count>0?(s(),o("span",et,"(总)")):m("",!0),e("div",tt,[t.trafficLimit!=null&&t.trafficLimit.dailySize!=null&&t.trafficLimit.dailySize.count>0?(s(),o("span",st,c(t.trafficLimit.dailySize.count)+" "+c(t.trafficLimit.dailySize.unit.toUpperCase().replace(/(.)B/,"$1iB")),1)):t.trafficLimit!=null&&t.trafficLimit.monthlySize!=null&&t.trafficLimit.monthlySize.count>0?(s(),o("span",it,c(t.trafficLimit.monthlySize.count)+" "+c(t.trafficLimit.monthlySize.unit.toUpperCase().replace(/(.)B/,"$1iB")),1)):t.trafficLimit!=null&&t.trafficLimit.totalSize!=null&&t.trafficLimit.totalSize.count>0?(s(),o("span",nt,c(t.trafficLimit.totalSize.count)+" "+c(t.trafficLimit.totalSize.unit.toUpperCase().replace(/(.)B/,"$1iB")),1)):(s(),o("span",ot,"无限制"))])]),e("div",ct,[at,t.priceType=="traffic"?(s(),o("div",rt,"按流量用量")):m("",!0),t.priceType=="bandwidth"?(s(),o("div",lt,"按带宽用量")):m("",!0),t.priceType=="period"?(s(),o("div",dt,[t.monthlyPrice>0?(s(),o("span",pt,c(t.monthlyPrice)+"元/月",1)):t.seasonallyPrice>0?(s(),o("span",mt,c(t.seasonallyPrice)+"元/季",1)):t.yearlyPrice>0?(s(),o("span",ut,c(t.yearlyPrice)+"元/年",1)):m("",!0)])):m("",!0)]),r(P),e("div",ft,[e("a",{href:d(Z).hostURL("/plans/buy?planId="+t.id)},[r(te,{outlined:"",class:"w-full"},{default:u(()=>[h("立即购买")]),_:1})],8,ht)])],32))),256))])],512)])):m("",!0),e("div",_t,[e("div",{class:"inner-block",ref_key:"advantagesBoxRef",ref:l},[vt,e("div",yt,[(s(),o(v,null,y(I,t=>e("div",bt,[e("h3",gt,[e("i",{class:w(["mr-2",t.icon])},null,2),h(c(t.name),1)]),e("p",xt,c(t.description),1)])),64))])],512)]),e("div",St,[e("div",{class:"inner-block",ref_key:"featuresBoxRef",ref:L},[Lt,e("div",Tt,[(s(),o(v,null,y(E,t=>e("div",kt,[e("h3",Ct,[e("i",{class:w(["mr-2",t.icon])},null,2),h(c(t.name),1)]),e("p",Pt,c(t.description),1)])),64))])],512)]),e("div",wt,[e("div",{class:"inner-block",ref_key:"scenesBoxRef",ref:T},[Bt,e("div",Dt,[r(ie,{value:k[0].name},{default:u(()=>[r(ne,null,{default:u(()=>[(s(),o(v,null,y(k,t=>r(re,{code:t.name},{default:u(()=>[h(c(t.name),1)]),_:2},1032,["code"])),64))]),_:1}),r(oe,null,{default:u(()=>[(s(),o(v,null,y(k,t=>r(ce,{code:t.name},{default:u(()=>[e("div",$t,[e("div",Rt,[e("p",zt,c(t.name),1),e("p",Nt,c(t.description),1),r(P),(s(!0),o(v,null,y(t.features,D=>(s(),o("p",At,[e("strong",null,[It,h(" "+c(D.name)+"：",1)]),h(c(D.description),1)]))),256))]),e("div",Et,[r($,{src:t.image},null,8,["src"])])])]),_:2},1032,["code"])),64))]),_:1})]),_:1},8,["value"])])],512)]),e("div",Ht,[e("div",{class:"inner-block",ref_key:"docsBoxRef",ref:B},Ft,512)]),r(Se,{icon:"pi pi-arrow-up",pt:{root:"bg-primary"}})]),_:1},8,["ctx"]))}};j({app:Mt,useRouter:!1});
